2009-07-28 21 views
13

Ho un componente UIWebView che sta per caricare una pagina Web che potrebbe contenere JavaScript. Voglio eseguire qualche JavaScript prima di eseguire qualsiasi JavaScript nella pagina web caricata. So che posso usare [myWebView stringByEvaulatingJavaScriptFromString:] sul delegato webViewDidFinishLoad: dello UIWebView, tuttavia questo eseguirà il mio JavaScript solo dopo viene eseguito il JavaScript nella pagina web.Esecuzione di JavaScript in un UIWebView prima che venga eseguito qualsiasi altro JavaScript

È l'unica soluzione per inserire il mio JavaScript nel codice sorgente della pagina Web? Ad esempio, lo inserirò subito dopo il tag <head> per assicurarti che sia il primo JavaScript che viene eseguito.

risposta

1

Controllare this post sull'ordine di esecuzione JS. C'è un altro tutorial qui per lo stesso problema. Se hai un problema con un pezzo di codice specifico, aggiungilo qui in un esempio dettagliato e vedrai cosa può essere fatto.

+0

Penso che questa sia più una domanda su come iniettare javascript in un UIWebView in iOS piuttosto che in una domanda di javascript rigida. – MonkeyBonkey

5

Vorrei una risposta a questa domanda pure. Posso farlo funzionare per il caricamento iniziale della pagina inserendo [myWebView stringByEvaluatingJavaScriptFromString: js] all'interno di webViewDidStartLoad. All'aggiornamento, tuttavia, non sembra funzionare.

Modifica: Ho trovato questa soluzione (simile al suggerimento nella tua domanda). Non sono sicuro di quanto sia robusto. http://www.stevesaxon.me/posts/2011/window-external-notify-in-ios-uiwebview/

Problemi correlati