有一个奇怪的问题:我可以在页面上运行一些脚本,但是另一个脚本不起作用。请帮我理解原因。
这是一个例子。我有一个webView(evalueteJavaScript:)
的HTML元素,这是一个注销的简单链接,我想点击它。但是当脚本运行时 - 没有任何反应。顺便说一下,当我在常规浏览器中将它粘贴到控制台时,相同的脚本成功注销(如Safari和Chrome)
此外,我遇到了与其他网站类似的问题,但不同的元素。 就像输入textFields一样,它不能保存脚本粘贴到其中的数据(甚至通过控制台)。似乎他们正在等待一些用户交互,或者像那样。或者我做错了......
HTML
<a href="#" title="logout" class="exit">logout</a>
Swift 3
func logOut() {
webView.evaluateJavaScript("document.querySelector('#header > div > a.exit').click()", completionHandler: { (result, error) in
if error != nil {
print("Logout error - \(error?.localizedDescription)")
} else {
print("Logout ok! \(result)")
}
})
self.webView.reloadFromOrigin()
}