Javascript阻塞直到图像预加载完成?

lok*_*lok 5 javascript jquery asynchronous image-preloader

我使用javascript预加载几个图像,使用以下代码:

// do the following for each image where 'this' is the path
(new Image()).src = this;
Run Code Online (Sandbox Code Playgroud)

这很好 - 在firebug中我可以看到每次迭代后都会触发每个图像下载.

我的问题是我想阻止,直到实际下载完成.换句话说,我想向用户显示"图像下载"对话框,直到所有图像都已完成下载.

现在,如果我只是在执行预加载循环之前显示对话框(并在循环完成后删除对话框),它只是捕获下载请求而不是实际下载完成.

由于实际下载似乎是异步的,有没有办法阻止所有下载完成?

tsh*_*hao 0

您可以使用onload成功下载图像时触发的方法,然后在该函数中设置下一步onload

以下是 W3 学校的参考资料:

http://www.w3schools.com/jsref/event_img_onload.asp