Otrzymuję następujący błąd z jQuery po aktualizacji do v3.0.0
.
jquery.js:9612 Uncaught TypeError: url.indexOf is not a function
Masz pomysł, dlaczego?
Otrzymuję następujący błąd z jQuery po aktualizacji do v3.0.0
.
jquery.js:9612 Uncaught TypeError: url.indexOf is not a function
Masz pomysł, dlaczego?
Odpowiedzi:
Zaktualizuj cały kod, który wywołuje load
takie funkcje,
$(window).load(function() { ... });
Do
$(window).on('load', function() { ... });
jquery.js: 9612 Uncaught TypeError: url.indexOf nie jest funkcją
Ten komunikat o błędzie pochodzi z jQuery.fn.load
funkcji.
W mojej aplikacji napotkałem ten sam problem. Po kilku kopaniach znalazłem to oświadczenie na blogu jQuery ,
.load, .unload i .error, przestarzałe od jQuery 1.8, już nie są . Użyj .on (), aby zarejestrować słuchaczy.
Po prostu zmieniam sposób, w jaki moje obiekty jQuery wywołują load
funkcję jak wyżej. I wszystko działa zgodnie z oczekiwaniami.
document.ready
funkcji i działa jak urok.
Lepszym podejściem może być takie wypełnienie
jQuery.fn.load = function(callback){ $(window).on("load", callback) };
Dzięki temu możesz pozostawić dotychczasowy kod nietknięty. Jeśli używasz webpacka, pamiętaj o użyciu programu ładującego skrypty.
Jquery 3.0 ma kilka przełomowych zmian, które usuwają niektóre metody z powodu konfliktów. Twój błąd jest najprawdopodobniej spowodowany jedną z tych zmian, takich jak usunięcie zdarzenia .load ().
Przeczytaj więcej w Przewodniku aktualizacji jQuery Core 3.0
Aby to naprawić, musisz przepisać kod, aby był zgodny z Jquery 3.0, albo możesz użyć wtyczki JQuery Migrate, która przywraca przestarzałe i / lub usunięte interfejsy API i zachowania.
Ten sam błąd napotkałem po aktualizacji do najnowszej wersji JQuery. Dlatego zaktualizowałem plik jquery, nad którym pracowałem, jak stwierdzono w poprzedniej odpowiedzi, więc powiedział on .on("load")
zamiast .load()
.
Ta poprawka nie jest zbyt stabilna i czasami nie działała dla mnie. Dlatego, aby rozwiązać ten problem, należy zaktualizować kod z:
.load();
do
.trigger("load");
Mam tę poprawkę z następującego źródła: https://github.com/stevenwanderski/bxslider-4/pull/1024