Я пытаюсь изменить свой UIWebView
на WKWebView
в моем приложении (Objective-C
). я вижу WKWebView
содержат тег «а» и внутри тега «а» содержит тег «образ»:iOS WKWebview, как определить, когда я нажимаю на изображение внутри <a> тег
<a href="http://click.adzcore.com/xyz"><img src="http://www.abc.xyz/smart/images/bnr/yyy.png" width="320" height="50" border="0" alt="+alt[n]+" onclick="_gaq.push(['_trackPageview','/smart/count/frognote']);"></a>
Я хочу определить, когда пользователь нажимает на изображение, так что я:
- (void)webView:(WKWebView)webView decidePolicyForNavigationAction:(WKNavigationAction)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {
if (navigationAction.navigationType == WKNavigationTypeLinkActivated) {
NSURL *url = navigationAction.request.URL;
[[UIApplication sharedApplication] openURL:url];
decisionHandler(WKNavigationActionPolicyCancel);
return;
}
decisionHandler(WKNavigationActionPolicyAllow);
}
Но этот код неверен, потому что WKNavigationTypeLinkActivated
не улавливается, когда пользователь нажимает на изображение.
тега , который позволяет функция нажмите имеет вложенное изображение, которое позволяет функцию щелчка, так как вы собираетесь решить, какой из них будет нажат? Можете ли вы попытаться сохранить только изображение? а затем использовать URL-адрес запроса «navigationAction» для проверки щелчка изображения в сочетании с 'WKNavigationTypeOther'. – NeverHopeless
@NeverHopeless: спасибо за ваш идеал, но я не могу контролировать html-код, потому что он возвращается с сервера. Я попытался использовать 'WKNavigationTypeOther', но это неверно, потому что, хотя вы не нажимаете изображение, вызывается событие click. – chaunv
Для теста, как только вы получите этот html, попробуйте заменить тег в соответствии с моим предложением (и убедитесь, что только нужный тег заменяет :)) и сначала посмотрите, если он работает, вы можете обсудить эту проблему с командой сервера и удалите часть, если она не понадобится. – NeverHopeless