window.onload
在我阅读资料的时候似乎可以与 document.onload
松散地互换,但我的经验表明这是不正确的。我继承了一个 JavaScript 脚本,但我不确定该如何纠正它。我希望在 DOM 加载完成后执行 JS,而不是等到所有资源都加载完毕。我该怎么做呢?
目前我的代码是:
window.onload = initDropMenu;
我尝试过:
document.onload = initDropMenu;
这只会导致菜单无法加载。我还尝试过从JS中完全删除该行,然后通过DOM执行它:
<body onload="initDropMenu()">
这也导致菜单没有显示,并且控制台中也没有出现任何错误。我的JS知识有限,我错过了什么?
document.onload
。但是<body onload=...>
应该可以工作,它相当于window.onload
。 - Barmar<body onload=...>
在页面加载时不会出现菜单,在控制台中也不会出现任何错误信息。我以前从未听说过document.onload
,但我的阅读资料告诉我它是存在的,https://dev59.com/FHRB5IYBdhLWcg3wj36c…或者是我误解了那个线程和它的使用方式? - chris85document.onload
和document.onDOMContentLoaded
混淆了。请注意,它没有像window.onload
一样提供document.onload
的链接。 - Barmar