用javascript预加载图像有麻烦

时间:2009-05-28 17:52:53

标签: javascript image image-preloader

我正在尝试预装大约150张图片,我希望能够做两件事......

1)使用文件名列表预加载图像。并非列表中的每个文件名都有一个与之匹配的文件。

例如)pic04.jpg可能不存在,即使它在列表中。

因此,当我正在预加载时,我希望能够在可能的情况下弄清楚图像是否存在。

2)现在该功能只是使用预加载所有150个图像    pictures [i] = new Image();    pictures [i] .src =“path / to / my / images /”+ imageName [i] +“.jpg”;

该功能执行速度极快,但图像似乎没有预先加载。在继续之前,我是否需要做一些让站点等待图像加载的东西?

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

  

该功能执行速度极快,但图像似乎没有预先加载。

正在异步加载图像。该函数完成其执行但浏览器继续在后台加载图像

  

因此,当我正在预加载时,我希望能够在可能的情况下弄清楚图像是否存在。

是的,有可能。您可以在Image对象上使用onerror事件处理程序

var img = new Image();
img.onerror=function(){alert('error: '+this.src);}
img.onload=function(){alert('image loaded: '+this.src);}
img.src='path/to/image.jpg';