【发布时间】:2012-03-23 11:07:44
【问题描述】:
使用 jquery 如何显示加载 gif 直到图像完全加载,然后删除加载 gif 并显示实际图像。这应该在页面内的所有图像上独立发生。这是一个例子:
这是我的尝试,但似乎不起作用:
HTML
<div class="thumbnail"><a href="#" class="boxImage ajaxloader"><img src="...image-one..." /></a></div>
<div class="thumbnail"><a href="#" class="boxImage ajaxloader"><img src="...image-two..." /></a></div>
<div class="thumbnail"><a href="#" class="boxImage ajaxloader"><img src="...image-three..." /></a></div>
CSS
.ajaxloader{ background: transparent url(..ajax-loader.gif...) no-repeat scroll center center;
JS
$('a.boxImage img').one("load", function(){
$(this).parent().removeClass('ajax-loader');
}).each(function(){
//covering the case images loading from cache
if(this.complete){
$(this).trigger("load");
$(this).parent().removeClass('ajax-loader');
}
});
另一个问题...上述方法(例如,在解决问题后)是否允许一次仅加载一个图像,还是允许浏览器对图像发出多个请求并尽可能多地并行加载.
【问题讨论】:
标签: jquery