【问题标题】:iOS Swift 5: How to execute a js file in a WKWebView?iOS Swift 5:如何在 WKWebView 中执行 js 文件?
【发布时间】:2020-04-12 11:43:01
【问题描述】:

如何在 WKWebView 中执行 script.js?我知道webView.evaluateJavaScript,但我不知道如何评估我的 script.js 文件,我已经尝试了其他用户在 stackoverflow 上找到的一些解决方案,但是没有任何效果可以帮助我解决这个问题吗?我疯了:(

这是我尝试过的:

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
                       webView.evaluateJavaScript("script.js", completionHandler: nil)
               }

【问题讨论】:

  • 从你的文件中取出数据作为字符串,然后调用webView.evaluateJavaScript(string, completionHandler: nil)

标签: javascript ios swift xcode wkwebview


【解决方案1】:

如果您只是尝试运行一些 javascript,但实际上并不想将其连接到 HTML 文档,那么您应该使用 JavaScriptCore 而不是 WKWebview。

import JavaScriptCore

let context = JSContext()

guard let path = Bundle.main.path(forResource: "script", ofType: "js"),
  let script = try? String(contentsOfFile: path, encoding: .utf8) else {
    fatalError("cannot load script")
}

let jsResult = context?.evaluateScript(script)
print(jsResult)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-16
    • 1970-01-01
    • 1970-01-01
    • 2020-12-27
    • 2020-08-22
    • 2016-04-07
    相关资源
    最近更新 更多