我想显示非ajax调用的预加载器并在加载资源后隐藏预加载器?

时间:2012-06-20 05:23:27

标签: javascript html5

我正在请求包含图像和声音文件的html5网页。一旦加载了所有图像和声音文件,我想使用样式属性隐藏预加载器。我如何知道为网页请求加载的最后一个资源,以便我可以隐藏预加载器? 注意:这是我的情况,我不使用任何ajax调用它是一个正常的网页请求。

2 个答案:

答案 0 :(得分:2)

  

如何知道为网页请求加载的最后一个资源,以便我可以隐藏预加载器?

当所有文件从所有资源(包括广告和图片)加载完毕后,load事件将触发。来自IE9 testdrive的此链接(http://ie.microsoft.com/testdrive/HTML5/DOMContentLoaded/Default.html)证明了load事件和DOMContentLoaded事件之间的差异(IE8中不支持)。

结果:

  1. 当页面开始加载时,您必须注册load事件的事件处理程序并显示预加载器消息
  2. load事件发生时,浏览器会执行您的load-event-handler,您可以在其中隐藏预加载器消息

答案 1 :(得分:0)

好吧,你真的无法访问图像和声音文件的“加载状态”。但是,如果加载了组件,浏览器将触发onLoad事件。这甚至适用于图像(和mayby soundfiles)。见http://www.htmlcodetutorial.com/images/_IMG_onLoad.html。如果您使用的是jQuery,也可以使用$(document).ready(...)(对于您的html页面)。