window.onload 关于页面加载完毕的问题

2005-09-29  duduwolf
英文原文在此:
http://dean.edwards.name/weblog/2005/09/busted/

大义如下:

我们经常使用 window.onload 来处理页面,当页面加载完成做一些事情。但这个 window.onload 是页面全部加载完成,甚至包括图片,而我们实际上经常需要的是文档 DOM 加载完毕

这是原来的方法。


运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

对于 Mozilla 可以这样


运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

对于 IE 浏览器,可以使用IE特有的 defer 属性。


运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

非IE浏览器会忽略 defer 而直接执行 script 代码,你可以有两种办法来屏蔽 非IE浏览器。
conditional comments 条件注释


运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

conditional compilation 条件编辑


运行代码 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

除此之外的浏览器就使用最上面第一个好了。最后一个问题就是要避免 onload 运行多次的问题,加入判断。


显示全部

真是很佩服老外的这种钻研精神,这么个小问题引申出来这么多知识,值得我们好好学习。:(

    来自: duduwolf > 《编程》

    以文找文   |   举报

    猜你喜欢
    发表评论
    推荐阅读 更多