首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jquery 3.0 url.indexOf错误

jquery 3.0 url.indexOf错误
EN

Stack Overflow用户
提问于 2016-06-10 09:47:56
回答 3查看 156.1K关注 0票数 236

一旦更新到v3.0.0,我就会从jQuery得到以下错误。

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

知道为什么吗?

EN

回答 3

Stack Overflow用户

发布于 2016-12-21 19:46:54

更好的方法可能是像这样的多层填充

代码语言:javascript
复制
jQuery.fn.load = function(callback){ $(window).on("load", callback) };

这样,您就可以保持遗留代码不变。如果你使用的是webpack,一定要使用脚本加载器。

票数 36
EN

Stack Overflow用户

发布于 2016-06-20 14:12:21

Jquery 3.0有一些突破性的变化,由于冲突而删除了某些方法。您的错误很可能是由于这些更改之一造成的,例如删除了.load()事件。

jQuery Core 3.0 Upgrade Guide中阅读更多内容

要解决这个问题,你要么需要重写代码,使其与jQuery3.0兼容,要么你可以使用JQuery Migrate plugin来恢复过时和/或移除的API和行为。

票数 16
EN

Stack Overflow用户

发布于 2020-09-04 19:32:25

@choz答案才是正确的方式。如果你有许多用法,并且想要确保它在任何地方都能正常工作,而不做任何更改,你可以添加这些小的迁移代码片段:

代码语言:javascript
复制
/* Migration jQuery from 1.8 to 3.x */
jQuery.fn.load = function (callback) {
    var el = $(this);

    el.on('load', callback);

    return el;
};

在这种情况下,您在其他节点上没有错误,例如在$image上,就像@Korsmakolnikov答案一样!

代码语言:javascript
复制
const $image = $('img.image').load(function() {
  $(this).doSomething();
});

$image.doSomethingElseWithTheImage();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37738732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档