我正在尝试为具有许多 AJAX 请求的页面显示加载图像(并将父级变为透明)。分别为每个 div 添加/删除加载图标和不透明度的最有效方法是什么?
这是我到目前为止所拥有的。我的方法的问题是不透明度也适用于 gif,这不是我想要的。我的代码是否有一个简单的修复方法或更好的方法?
示例:http: //jsfiddle.net/justincook/x4C2t/
HTML:
<div id="a" class="box">A</div>
<div id="b" class="box">B</div>
<div id="c" class="box">C</div>
JavaScript:
$.fn.loading = function(show){
if(show){
this.prepend('<div class="loading-centered"></div>');
this.css({ opacity: 0.3 });
}else{
this.children('.loading-centered').remove();
this.css({ opacity: 1 });
}
};
$('#a').loading(true); //start
setTimeout(function(){ $('#a').loading(false); }, 3000); // stop