我正在创建一个图像预加载器。它适用于所有浏览器,除了Firefox(使用Firefox 10.0测试)。基本上输入是一个名为image_list
的图像数组。这些图像动态附加到文档正文,并附加加载回调,调用函数update_progress
。代码如下:
$(image_list).each(function() {
var x = $('<img />')
.load(function() {update_progress(percent_loaded += step);})
.attr('src', this)
.appendTo('body')
.css('display', 'none');
.each(function() {
if(this.complete)
update_progress(percent_loaded += step);
});
});
在Firefox中,永远不会调用加载回调和update_progress
。然而,完全相同的代码在chrome和我测试过的所有其他浏览器中运行良好。有没有办法检测Firefox中加载图像的时间?
答案 0 :(得分:0)
我首先通过检查图像的高度属性来检查图像是否有高度。
if (the_image.height > 0) {
// The image is already loaded (possibly cached)
}
如果您有任何缓存的图片等,这应该可以帮助您解决这个问题。