Xio*_*ong 26 webkit uiwebview javascriptcore ios8 wkwebview
在UIWebView中,我可以JSContext通过:
[webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]
Run Code Online (Sandbox Code Playgroud)
同样的方式在WKWebView和应用程序崩溃到达这行代码时不起作用.
有没有办法在WKWebView中获取JSContext?
提前致谢.
Leo*_*ica 10
您无法获取上下文,因为布局和javascript是在另一个进程上处理的.
而是将脚本添加到webview配置中,并将视图控制器(或其他对象)设置为脚本消息处理程序.
现在,从JavaScript发送消息,如下所示:
window.webkit.messageHandlers.interOp.postMessage(message)
Run Code Online (Sandbox Code Playgroud)
您的脚本消息处理程序将收到回调:
- (void)userContentController:(WKUserContentController *)userContentController
didReceiveScriptMessage:(WKScriptMessage *)message{
NSLog(@"%@", message.body);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12170 次 |
| 最近记录: |