显示许多ajax调用的ajax微调器。

时间:2015-07-20 09:39:28

标签: javascript jquery ajax

目前我正在使用ajax设置方法调用显示微调器:

(function() {
    $.ajaxSetup({
        beforeSend: showLoader,
        complete: hideLoader,
        error: hideLoader
    });
})();

这工作正常,但现在发生的问题是,当发生许多ajax调用时,complete正在关闭加载器!

有没有简单的方法来解决这个问题?

4 个答案:

答案 0 :(得分:1)

您可以查看jQuery的.ajaxStart.ajaxStop方法。

$( document ).ajaxStart(function() {
  // show your loader
});

$( document ).ajaxStop(function() {
  // hide your loader
});

答案 1 :(得分:0)

我唯一可以建议的是保持计数器的调用次数,调用增量调用,调用完成后调用,然后在hideLoader函数中查看反击,如果它更高,则0不要隐藏它。

答案 2 :(得分:0)

jQuery中有DOM个事件绑定ajax起始和ajax结束事件。使用

.ajaxStart();
.ajaxStop();

在DOM中显示您的加载程序。

答案 3 :(得分:0)

您可以使用jQuery.ajaxStop(),这是在执行所有Ajax调用时调用的,

$(document).ajaxStop(function() {
  //call hideLoader here
});