我正在尝试创建预加载器,但是当我运行它时,控制台会显示:
加载的[object HTMLImageElement]共 5 个
从这行代码
console.log('Loaded ' + images[i] + ' of ' + images.length);
但理想情况下,我希望它显示:
“已加载 1 个,共 5 个”
我怎样才能解决这个问题?我只想将其创建为回调,以便知道某个面板中的所有图像何时加载。
$(panel).each(function(){
// Find Panel
var panelId = $(this).attr('id');
console.log('Loading ' + panelId);
// Find Images
var images = $(this).find('img');
var path = images.attr('src');
console.log('Total of ' + images.length + ' Images');
// Preload Images
for( i= 0; i < images.length; i++ ) {
images[i] = new Image();
images[i].src = path;
images[i].onload = function(){
console.log('Loaded ' + images[i] + ' of ' + images.length);
};
}
// End
});
each()
另外-在前一个面板完成检查后,如何修改我的循环以检查每个面板?
任何帮助都会很棒。谢谢。