我有一个 UIWebView
,当用户点击链接时,我需要执行某些操作。可以使用委托回调来检测这些点击:
- (BOOL) webView: (UIWebView*) webView
shouldStartLoadWithRequest: (NSURLRequest*) request
navigationType: (UIWebViewNavigationType) navigationType
{
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
…
}
}
问题在于这段代码无法处理所有的链接点击。例如,普通的 Google 搜索结果页面会对链接进行一些奇怪的处理:
<a href="http://example.com/" class="l" onmousedown="return rwt(…)">
<em>Link Text</em>
</a>
rwt
函数导致链接在被点击时不会触发UIWebViewNavigationTypeLinkClicked
事件。有没有一种可靠的方法来检测所有落入“导航到其他页面”类别的事件?