向 webview 添加 userScript
添加前,网页代码如下:
<!DOCTYPE html>
<html>
<!--<script type="text/javascript">-->
<!-- function echo(str) {-->
<!-- console.log(str);-->
<!-- window.webkit.messageHandlers.testecho.postMessage("str");-->
<!--}-->
<!--</script>-->
<body>
<input type="button" onClick="echo('toast clicked')" value="toast">
<input type="button" onClick="echo('alert clicked')" value="Alert">
</body>
</html>
添加代码
let jsStr = """
function echo(str) {console.log(str);window.webkit.messageHandlers.testecho.postMessage("str");}
"""
let userScript = WKUserScript.init(source: jsStr, injectionTime: .atDocumentStart, forMainFrameOnly: true)
usecc.addUserScript(userScript)
添加后,网页代码如下


html 没有发生变化,但是可以看到有一个 user-script。
控制台中,也有输出。native 也可以收到回调。

参考
向 webview 添加 userScript的更多相关文章
- android webview 添加内置对象
package com.android.EBrowser; import android.app.Activity;import android.graphics.Rect;import androi ...
- Flutter Webview添加Cookie的正确姿势
场景 h5页面要从cookie里面取数据,所以需要在flutter webview的cookie里面塞一些数据,设置的数据多达十几条:按照网上查的使用方式来设置,通过fiddler抓包发现,只能生效一 ...
- Qt5.WebView.添加节点的测试代码
1.代码: #include "mainwindow.h" #include "ui_mainwindow.h" #include <QWebFrame& ...
- 对所有的webview添加userAgent
在appdelegate中- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDicti ...
- Android——WebView
WebView用途 通过Intent调用系统浏览器: 引言: Uri uri = Uri.parse(url);//url为你要链接的地址 Intent intent = new Intent(Int ...
- android WebView介绍
在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装成名为WebView的组件. WebView使用: (1)添加权限:AndroidManifest.xml中必须使用许可&q ...
- WebView加载本地Html文件并实现点击效果
Webview是用来与前端交互的纽,可以加载本地Html文件,和网页并实现交互的功能. WebView通过WebSetting可以使用Android原生的JavascriptInterface来进行j ...
- 【收藏】android WebView总结
来自:http://blog.csdn.net/chenshijun0101/article/details/7045394 浏览器控件是每个开发环境都具备的,这为马甲神功提供了用武之地,window ...
- android webview 介绍
在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装成名为WebView的组件. WebView使用: (1)添加权限:AndroidManifest.xml中必须使用许可&q ...
随机推荐
- Debian8 下面 muduo库编译与使用
其实<Linux 多线程服务端编程>已经写得很详细 但是考虑到代码版本的更新和操作系统的不同 可能部分位置会有些许出入 这里做个记录 方便以后学习运行 我使用的虚拟 安装的是debian系 ...
- com.opensymphony.xwork2.config.ConfigurationManager.addConfigurationProvider
一月 31, 2016 5:06:31 下午 org.apache.catalina.core.StandardContext filterStart 严重: Exception starting f ...
- Sublime Text webstorm等编译器快速编写HTML/CSS代码的技巧
<!DOCTYPE html> Sublime Text webstorm等编译器快速编写HTML/CSS代码的技巧--summer-rain博客园 xiayuhao 东风夜放花千树. 博 ...
- centos7 rabbitmq安装以及应用
安装单机rabbitmq 1.安装erlang cd /usr.local yum install wget yum install net-tools wget http://erlang.or ...
- slice、substring、substr
slice() 定义和用法 slice() 方法可从已有的数组中返回选定的元素. string.slice(start, end)提取一个字符串 string.substring(start, end ...
- MVC, EF, Code First 相关问题总结
1. 控制表名单复数: 在DbContext类中修改OnModelCreating()为: protected override void OnModelCreating(DbModelBuilder ...
- SetFocus (GetDlgItem (hwnd, idFocus))函数的各参数的具体含义
Setfocus(HWMD hwnd):将窗口hwnd设置成获得焦点 GetDlgItem (hwnd, idFocus):此函数返回一个句柄 具体参数的含义: hwnd:包含该窗口标志位的对话框的句 ...
- knowledge_map 修改笔记
20150110 knowledge_map修改的地方: 1.dialog的调整.把结构图中的dialog(另存,新建知识点)调整到全局中(我的列表,knowledge_map_js_showKnow ...
- [C#]SharpSSH-一个可以使用SSH连接的.NET库
A Secure Shell (SSH) library for .NET 觉得有用,就记录下来了 http://www.tamirgal.com/blog/page/SharpSSH.aspx ht ...
- [LeetCode 题解] Search in Rotated Sorted Array
前言 [LeetCode 题解]系列传送门: http://www.cnblogs.com/double-win/category/573499.html 题目描述 Suppose an array ...