究竟是什么时候发生了onLoad

时间:2011-02-21 19:31:46

标签: javascript firefox onload

我特别关注DOM的选定元素的onload事件。出于示例的目的,假设我的DOM中有一个图像。

正如我以为我理解的那样,当图像被绘制到屏幕时,此图像的onload事件应该会触发,但是最近我已经给出了数据来暗示其他情况。所以我的问题如下:

按照以下事件的顺序,是否会触发图像的onload事件?

  1. 检查包含图像的HTML
  2. 请求图片
  3. 收到图像的第一个字节
  4. 收到最后一个字节
  5. 浏览器检查HTTP响应的标头
  6. 图像被绘制到屏幕
  7. 我特别关注Firefox,但我也会对这会如何影响Internet Explorer(特别是IE8)和Chrome

    感兴趣

3 个答案:

答案 0 :(得分:4)

在屏幕上绘制图像之后发生加载事件。

演示: http://jsfiddle.net/e5hvr/

(警报阻止浏览器线程,因此如果图像尚未绘制,则在警报仍然打开时您将无法看到它。)

答案 1 :(得分:1)

根据jQuery docs

  

虽然JavaScript提供了负载   用于在页面执行代码的事件   渲染,此事件没有得到   触发,直到所有资产如   图像已被完全接收。

所以,为了回答你的问题,我会在你列出的所有事件之后说出来。

答案 2 :(得分:0)

我会说除了6之外的所有事情。当然,你的事件的顺序是错误的;标题出现在数据之前。