我正在使用jQuery的$ .each函数迭代图像数组并预加载它们。我也在使用onload事件,以便在图像加载完成后我可以执行其他功能。一旦所有图像都完成,我怎么知道?
var array = ["1.jpg", "2.jpg", "3.jpg", "4.jpg"];
function preloadAndDoStuff(array) {
$.each(array, function(i, url) {
var img = new Image();
img.onload = function() {
/* Some functionality here
* that is only possible when
* an image has finished loading */
console.log(img.src + " loaded");
}
img.src = url;
});
}
preloadAndDoStuff(array);
// 1.jpg loaded
// 2.jpg loaded
// 3.jpg loaded
// 4.jpg loaded
在我的示例中,我只需要一个日志而不是X量的日志。如果它意味着什么:数组的长度将不断变化。