很多时候我们讲window.onload事件上面挂接一个function,以为这样就万事大吉了,以为在页面加载完成之后我们的function被正确执行了。
其实以上经验只有一半是正确的,因为在某种情况下,onload函数执行的时机与我们料想的不一样,甚至会有很多偏差。
对于一个<img>标记过多的页面来说,其实onload函数会在所有img都加载完成之后才开始执行,不信就看看这个测试页面
正如测试页面的执行结果,我们的window.onload函数如果工作在<img>比较多,而图片加载比较缓慢的情况下时,效果是非常不理想的,因为在图片没有加载完成之前,可能页面上的所有功能都无法正确完成,这是个比较严重的问题。
还好,已经有聪明人想到合理的解决方案,就是 Andrea Giammarchi的OnContent函数。
具体的实用方法以及最终效果,在这个例子页面上面已经说的非常清楚了,我就不在多讲了。
这个方案确实不错,被这个问题困扰的我总算找到答案了,在找寻答案的途中,发现一些有趣的东西,大家也应该看看:
Technorati : ajax, javascript, webdev, window.onload problem