link instalar jquery jquery-3

instalar - jquery slim



jquery 3.0 url.indexOf error (4)

Recibo el siguiente error de jQuery una vez que se ha actualizado a v3.0.0 .

jquery.js:9612 Uncaught TypeError: url.indexOf is not a function

Alguna idea de por qué?


Jquery 3.0 tiene algunos cambios importantes que eliminan ciertos métodos debido a conflictos. Lo más probable es que su error se deba a uno de estos cambios, como la eliminación del evento .load ().

Lea más en la Guía de actualización de jQuery Core 3.0

Para solucionar esto, debe volver a escribir el código para que sea compatible con Jquery 3.0 o puede usar el complemento JQuery Migrate que restaura las API y comportamientos obsoletos y / o eliminados.


Me encontré con el mismo error después de actualizar a la última versión de JQuery. Por lo tanto, actualicé el archivo jquery en el que estaba trabajando, como se indicó en una respuesta anterior, por lo que decía .on("load") lugar de .load() .

Esta solución no es muy estable y a veces no funcionó para mí. Por lo tanto, para solucionar este problema, debe actualizar su código desde:

.load();

a

.trigger("load");

Obtuve esta solución de la siguiente fuente: https://github.com/stevenwanderski/bxslider-4/pull/1024


Un mejor enfoque puede ser un polyfill como este

jQuery.fn.load = function(callback){ $(window).on("load", callback) };

Con esto, puede dejar el código heredado intacto. Si usa webpack, asegúrese de usar script-loader.


Actualice todo su código que llama a la función de load como,

$(window).load(function() { ... });

A

$(window).on(''load'', function() { ... });

jquery.js: 9612 Tipo de error no capturado: url.indexOf no es una función

Este mensaje de error proviene de la función jQuery.fn.load .

Me he encontrado con el mismo problema en mi solicitud. Después de investigar un poco, encontré esta declaración en el blog jQuery ,

.load, .unload y .error, en desuso desde jQuery 1.8, ya no existen . Use .on () para registrar oyentes.

Simplemente cambio la forma en que mis objetos jQuery llaman a la función de load . Y todo funciona como se esperaba.