onload 和 DOMContentLoaded 的陷阱
在正常情况下:
- window.onload 事件在所有页面元素(包括图片,脚本等)都下载完毕后才会触发。
- 除了 IE,其它浏览器支持 DOMContentLoaded 事件。当 DOM 内容下载完毕,就会立刻触发。
- 事件处理器必须在事件触发前注册才有效,否则不会被执行。例子:在 window 已经 load 完成后,再给 window.onload 注册的处理器不会被执行。
- 针对 IE,有各种模拟 DOMContentLoaded 事件的办法。目前被广泛采纳的方案是判断 document 是否可以滚动(doScroll)。一旦可以滚动,就意味着 DOM Content 已经加载完毕。
下面说两个陷阱 阅读全文 »
