Ho un UIWebView
e devo fare qualcosa quando l'utente tocca un collegamento. C'è un callback delegato che può essere utilizzato per rilevare i rubinetti:Come posso rilevare in modo affidabile un clic del collegamento in UIWebView?
- (BOOL) webView: (UIWebView*) webView
shouldStartLoadWithRequest: (NSURLRequest*) request
navigationType: (UIWebViewNavigationType) navigationType
{
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
…
}
}
Il problema è che questo codice non gestisce tutti i clic sui link. A titolo di esempio, una pagina di Google pianura Risultati della ricerca fa qualcosa di strano con il link:
<a href="http://example.com/" class="l" onmousedown="return rwt(…)">
<em>Link Text</em>
</a>
I risultati rwt
funzione nei collegamenti non scatenanti l'evento UIWebViewNavigationTypeLinkClicked
quando selezionati. C'è un modo per rilevare in modo affidabile tutti gli eventi che rientrano nel bucket "navigate verso un'altra pagina"?
Non penso che l'OP abbia il controllo della pagina Web che viene visualizzata in UIWebView. Pertanto non possono aggiungere il javascript personalizzato. –
È possibile aggiungere facilmente lo script personalizzato dopo aver caricato la pagina. Vedi la mia modifica su come fare questo – Lefteris
Molto bello aggiungere come aggiungere javascript personalizzato a qualsiasi pagina. –