window.onload() 和 document.addEventListener('load', ..) 有什么区别?

新手上路,请多包涵

在我看来,当每个资源及其依赖资源完成加载时,这两个事件都会被触发。这引发了一些问题:

  1. 这些事件之间有什么区别吗?
  2. 哪个事件先被触发?
  3. 在所有内容加载完成后,哪个事件可以或应该优先用于向正文添加额外的 HTML 元素?

原文由 Chilly Code 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答
  1. 正如你所说,他们都做同样的事情。 addEventListener 的优点是可以给load事件添加多个事件监听器。

  2. 从一些基本测试来看,听众似乎是按照设置的顺序被调用的,尽管我不知道这有多可靠。

  3. 您可以使用任何一种方法来做任何您需要的事情。

原文由 Whothehellisthat 发布,翻译遵循 CC BY-SA 4.0 许可协议

他们做的事情并不完全相同,至少在 Firefox 中是这样。

原因是 window.onload 相当于 window.addEventListener("load") ,而不是 document.addEventListener("load")

虽然,我看到的所有文档都说它们是等价的。

原文由 JPL 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏