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

Mat*_*ley 36 jquery

所以jQuery 3.0今天发布了,由于某种原因,以下代码不再适用于我的网站:

$(window).load(function() {});
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议我如何解决这个问题或者当/ every /加载时活动的替代方案?

gae*_*noM 96

读取破坏 - 更改 - 卸载 - 卸载 - 错误 - 删除:

中断更改:.load(),. unload()和.error()已删除

这些方法是事件操作的快捷方式,但有几个API限制.事件.load()方法与ajax .load()方法冲突.由于DOM方法的定义方式,.error()方法无法与window.onerror一起使用.如果需要通过这些名称附加事件,请使用.on()方法,例如将$("img").load(fn)更改为$(img).on("load",fn).

因此,您需要更改:

$(window).load(function() {});
Run Code Online (Sandbox Code Playgroud)

至:

$(window).on("load", function (e) {})
Run Code Online (Sandbox Code Playgroud)

  • 我确实在版本3.1.1上将其更改为`$(window).on('load',function(e){})`但它仍然无效 (3认同)
  • 我发现在`on`之后使用单引号使其失败,我已将我的代码更改为`$(window).on("load",function(e){})`现在它的工作,我不知道知道为什么引用很重要. (3认同)
  • 非常感谢你.;)享受你的堆栈溢出:)))) (2认同)