我试过没有运气在stackoverflow上实现其他代码。我正在WKWeview中评估javascript,并希望在内容完全加载后进行侦听,以便在加载的页面上执行语句。
Javascript :(未执行func webView)
webView.evaluateJavaScript("_formHist.submit();", completionHandler: nil)
到目前为止,我尝试过使用的代码:(仅在某些页面上有效)
func webView(_ webView: WKWebView,
didFinish navigation: WKNavigation!) {
//insert code
}
我是iOS开发的新手,所以请尽可能详细地解释答案!
最佳答案
_formHist
如何定义?
如果尚未将其定义为javascript对象,则将无法使用。
除此之外,在执行代码时页面可能未完全加载,因此您可能需要侦听页面完全加载时触发的事件
如果您引用此answer,它将告诉您可以使用以下方法确定页面何时已完全加载
document.addEventListener("DOMContentLoaded", function(event) {
//do work
});
因此,对于您的情况,您只需要使用此事件侦听器
webView.evaluateJavaScript("document.addEventListener("DOMContentLoaded", function(event) { _formHist.submit(); });", completionHandler: nil)
试试看,看看是否可行
关于swift - WkWebkiew完成页面加载后如何收听?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54036119/