WKWebView 是不是支持加载外部 javascript 文件?
Posted
技术标签:
【中文标题】WKWebView 是不是支持加载外部 javascript 文件?【英文标题】:Does WKWebView support loading of external javascript files?WKWebView 是否支持加载外部 javascript 文件? 【发布时间】:2016-02-10 10:36:19 【问题描述】:我正在将一个 html 模板加载到 WKWebView 中。 HTML 有一个脚本标签,它引用了一个本地 JS 文件,如下所述:
<script type="text/javascript" src="test.js"></script>
但是,这个 js 内容根本没有加载到 web 视图中。
所以,我使用 WKUserScript 将此文件的内容注入 Web 视图。这解决了我最初的问题。但是,我在运行时在“test.js”中注入了一些额外的 JS 文件。这些文件都没有加载到 Web 视图中。
调试时,所有这些文件都出现以下错误:'加载资源失败:在此服务器上找不到请求的 URL。'.
有趣的是,当使用 UIWebView 时,相同的代码可以正常工作。
感谢任何输入/反馈。谢谢。
【问题讨论】:
【参考方案1】:可以。
从资源包中加载你的 test.js
var path = NSBundle.mainBundle().pathForResource("test", ofType: "js")
将文件内容转换为字符串,然后使用内置的 evaluateJavaScript() 加载 javascript 代码...
webView.evaluateJavaScript(String.stringWithContentsOfFile(path), completionHandler: nil)
【讨论】:
你将如何使用另一个js文件的功能?我正在尝试使用我的 js 文件中的一个 js 文件中的库以上是关于WKWebView 是不是支持加载外部 javascript 文件?的主要内容,如果未能解决你的问题,请参考以下文章
外部JS可以在iOS WkWebView中的加载页面(完成时)上执行吗