今天发布了jQuery 3.0,但是由于某种原因,以下代码在我的网站上不再起作用:
$(window).load(function() {});
有人能建议我如何解决这个问题或者提供一个在/everything/加载完毕后激活的替代方案吗?
今天发布了jQuery 3.0,但是由于某种原因,以下代码在我的网站上不再起作用:
$(window).load(function() {});
有人能建议我如何解决这个问题或者提供一个在/everything/加载完毕后激活的替代方案吗?
从breaking-change-load-unload-and-error-removed中阅读:
重大更改:已删除.load()、.unload() 和 .error()
这些方法是事件操作的快捷方式,但具有多个 API 限制。事件.load() 方法与 ajax .load() 方法冲突。由于 DOM 方法的定义方式,.error() 方法无法与 window.onerror 一起使用。如果需要通过这些名称附加事件,请使用.on() 方法,例如将 $("img").load(fn) 更改为 $(img).on("load", fn)。
因此,您需要进行更改:
$(window).load(function() {});
到:
$(window).on("load", function (e) {})
$(window).on('load', function (e) {})
,版本号为3.1.1,但仍然无法正常工作。 - RegarBoyon
后使用单引号会导致失败,所以我把代码改成了 $(window).on("load", function (e) {})
现在它可以工作了,我不知道为什么引号很重要。 - RegarBoy
$(window).on('load', function(){})
- Karl-André Gagnon