Viene visualizzato l'errore seguente da jQuery una volta aggiornato a v3.0.0
.jquery 3.0 url.indexDi errore
jquery.js:9612 Uncaught TypeError: url.indexOf is not a function
qualche idea del perché?
Viene visualizzato l'errore seguente da jQuery una volta aggiornato a v3.0.0
.jquery 3.0 url.indexDi errore
jquery.js:9612 Uncaught TypeError: url.indexOf is not a function
qualche idea del perché?
Aggiornamento tutto il codice che chiama load
funzione come,
$(window).load(function() { ... });
Per
$(window).on('load', function() { ... });
jquery.js:9612 Uncaught TypeError: url.indexOf is not a function
Questo messaggio di errore viene daFunzione.
Ho riscontrato lo stesso problema nella mia applicazione. Dopo un po 'di scavo, ho trovato questa dichiarazione in jQuery blog,
.load, .unload, and .error, deprecated since jQuery 1.8, are no more. Use .on() to register listeners.
ho semplicemente cambiare come i miei oggetti jQuery chiamano la funzione load
come sopra. E tutto funziona come previsto.
È pazzesco che non abbiano un grosso avviso deprecato su questa pagina nei loro documenti, http://api.jquery.com/load/. –
Ho trovato questo il problema esatto che stavo avendo durante il bootstrap di zurbs foundation in aurelia –
un po 'ironico che l'unico posto in cui stavo ancora facendo questo era il codice di gestione degli errori che poi si ruppe: -/ –
Jquery 3.0 presenta alcune modifiche irrisolte che rimuovono determinati metodi a causa di conflitti. Molto probabilmente il tuo errore è dovuto a una di queste modifiche, come la rimozione dell'evento .load().
Maggiori informazioni nella jQuery Core 3.0 Upgrade Guide
Per risolvere questo problema si sia bisogno di riscrivere il codice per essere compatibile con jQuery 3.0 oppure è possibile utilizzare la JQuery Migrate plugin che ripristina le API deprecate e comportamenti e/o rimossi.
Ho trovato lo stesso errore dopo l'aggiornamento all'ultima versione di JQuery. Di conseguenza, ho aggiornato il file jquery su cui stavo lavorando, come indicato in una risposta precedente, quindi ha detto .on("load")
anziché .load()
.
Questa correzione non è molto stabile e talvolta non ha funzionato per me. Quindi per risolvere questo problema si dovrebbe aggiornamento il codice da:
.load();
a
.trigger("load");
ho ottenuto questa correzione della fonte seguente: https://github.com/stevenwanderski/bxslider-4/pull/1024
Meglio approccio può essere un polyfill come questo
jQuery.fn.load = function(callback){ $(window).on("load", callback) };
Con questo è possibile lasciare intatto il codice precedente. Se usi webpack assicurati di usare script-loader.
Grazie mille. Ho ancora un errore, James ti ha suggerito di usare. jQuery.fn.load = function (callback) {$ (window) .trigger ("load", callback); }; – rgfx
Grazie! Funziona per me. –
controllare questo, può essere che risolve il problema [Uncaught TypeError: Undefined non è una funzione su indexOf] (http: // stackoverflow.it/questions/24471229/uncaught-typeerror-undefined-is-not-a-function-on-indexof) –
è la nuova versione di jQuery che genera l'errore. La vecchia versione va bene. – Kamrul
im in questo momento anche in questo: 0 – Feek