【发布时间】:2020-07-25 17:15:37
【问题描述】:
在 UIWebview 实现中,我有类似的东西:-
if let pageBody = webView?.stringByEvaluatingJavaScript(from: "document.body.innerHTML") {
if pageBody.contains("xyz") {
return webView?.stringByEvaluatingJavaScript(from:
"document.getElementById('xyz').innerHTML")
}
}
我正在尝试将此迁移到 WKWebview:-
我做了这样的事情,但是返回值在嵌套的完成处理程序中丢失了:-
wkWebView?.evaluateJavaScript("document.body.innerHTML", completionHandler: { (pageBody, nil) in
if let pBody = (pageBody as? String)?.contains("xyz"), pBody {
wkWebView?.evaluateJavaScript("document.getElementById('xyz').innerHTML", completionHandler: { (result, error) in
resultString = result as? String
})
}
})
return resultString
【问题讨论】:
标签: ios swift uiwebview wkwebview evaluatejavascript