我有一个 UIWebView 组件,它将加载一个可能包含 JavaScript 的网页。我想在加载的网页上运行任何 JavaScript 之前运行我自己的一些 JavaScript。我知道我可以使用 [myWebView stringByEvaulatingJavaScriptFromString:]
在 webViewDidFinishLoad:
上UIWebView
代表,但是这只会在网页上的 JavaScript 运行后 运行我的 JavaScript。
将我的 JavaScript 注入(inject)网页的源代码是唯一的解决方案吗?例如,我会把它紧跟在 <head>
之后标记以确保它是第一个运行的 JavaScript。
最佳答案
我也想回答这个问题。通过将 [myWebView stringByEvaluatingJavaScriptFromString: js]
放在 webViewDidStartLoad
中,我可以让它在页面的初始加载时工作。然而,在刷新时,它似乎不起作用。
编辑:我发现了这个变通方法(类似于您问题中的建议。)不确定它有多稳健。 http://www.stevesaxon.me/posts/2011/window-external-notify-in-ios-uiwebview/
关于javascript - 在运行任何其他 JavaScript 之前在 UIWebView 中运行 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1197098/