一旦完成所有三个加载...
$("#sidebar a").live("click", function(e){
$(this).addClass("selected loading");
$("#conceptual").load(conceptualUrl, null, function(){ $(this).removeClass('loading').show("fast"); });
$("#development").load(developmentUrl, null, function(){ $(this).removeClass('loading').show("fast"); });
$("#operational").load(operationalUrl, null, function(){ $(this).removeClass('loading').show("fast"); });
});
完成所有三项加载后,如何从链接中删除加载类?
$("#sidebar a.loading").removeClass("loading");
谢谢!
最佳答案
请尝试以下操作:
$("#sidebar a").live("click", function(e){
$(this).addClass("selected loading");
var num_loaded = 0;
var num_to_load = 3;
function show() {
num_loaded++;
if (num_loaded === num_to_load) {
$(this).removeClass('loading').show("fast");
}
}
$("#conceptual").load(conceptualUrl, null, show);
$("#development").load(developmentUrl, null, show);
$("#operational").load(operationalUrl, null, show);
});
show
函数通过关闭保持num_loaded
和num_to_load
的可见性。由于功能都相同,因此将匿名回调重构为单个命名函数也很有意义。关于ajax - jquery-在多个.load之后执行[x],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1685893/