仅在WKWebView网页已完全加载

时间:2018-05-25 03:15:16

标签: javascript ios swift load wkwebview

我想在网页完全加载(包括图像)后才在WKWebView中运行特定脚本。我到目前为止所做的是运行func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!)函数并在self.webView.evaluateJavaScript(...)内调用didFinish,但我注意到didFinish在网页完全加载之前触发。为了正确运行我的代码,我一直在使用DispatchQueue.main.asyncAfter(deadline: .now() + 0.6)来延迟功能并为网页提供足够的时间来下载内容;但是,我想要一个更标准化的版本 - 例如,如果WiFi连接速度很慢,那么延迟不足以阻止功能发射。

如何在网页完全加载之前等待我的webView.evaluateJavaScript(...)

这是我到目前为止所尝试的,但它根本不起作用:

self.webView.evaluateJavaScript("function getHTML() { return document.documentElement.innerHTML; } window.onload = getHTML", completionHandler: { (html: Any?, error: Error?) in`

非常感谢任何帮助!

0 个答案:

没有答案
相关问题