我有一个UIWebView组件,它将加载一个可能包含JavaScript的网页.我希望在加载的网页上的任何JavaScript运行之前运行我自己的JavaScript.我知道我可以[myWebView stringByEvaulatingJavaScriptFromString:]
在webViewDidFinishLoad:
代理上使用UIWebView
,但这只会在网页上的JavaScript 运行后运行我的JavaScript .
是将我的JavaScript注入网页源代码的唯一解决方案吗?例如,我会立即将它放在标记之后,以确保它是第一个运行的JavaScript.
我也想回答这个问题.我可以通过放入[myWebView stringByEvaluatingJavaScriptFromString: js]
内部来使其适用于页面的初始加载webViewDidStartLoad
.但是,在刷新时,它似乎不起作用.
编辑:我发现这个解决方法(类似于你问题中的建议.)不确定它有多强大. http://www.stevesaxon.me/posts/2011/window-external-notify-in-ios-uiwebview/