Put*_*tte 5 javascript ios swift wkwebview
在我的 IOS 应用程序中,我创建了一个不属于我自己的网站的WKWebview 。所以在我的里面:
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
Run Code Online (Sandbox Code Playgroud)
我有几个.evaluateJavascript,可以将数据添加到文本字段、删除网站上的元素等。
但我正在尝试添加一个.evaluateJavascript(或其他)来识别网站上的按钮点击。
我尝试通过执行以下代码来添加它:
bookingView.evaluateJavaScript("document.getElementById('optional_button').onclick();") { (key, err) in
if let err = err{
print(err.localizedDescription)
}
else{
print("You tapped the button!")
}
Run Code Online (Sandbox Code Playgroud)
但这是行不通的。每次我打开 WebView 时,应用程序都会打印出“您点击了按钮”,即使我没有打开。
那么,我可以用evaluateJavascript检测按钮点击吗?
小智 7
你可以捕获 url 并对其做出反应
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
decisionHandler(.allow)
guard let urlAsString = navigationAction.request.url?.absoluteString.lowercased() else {
return
}
if urlAsString.range(of: "the url that the button redirects the webpage to") != nil {
// do something
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15698 次 |
| 最近记录: |