jquery 手册
Ajax
属性(Attributes)
回调对象(Callbacks ..
核心(Core)
CSS
数据(Data)
延迟对象(Deferred o ..
尺寸(Dimensions)
效果(Effects)
事件(Events)
表单(Forms)
文档操作(Manipulati ..
杂项(Miscellaneou ..
位置(Offset)
插件编写(Plugin Aut ..
属性(Properties)
选择器(Selectors)
遍历(Traversing)
工具(Utilities)

Returns: jQueryjQuery .ajaxStop( Function handler() )

描述:注册一个完成了所有的Ajax请求时要调用的处理程序。这是一个 Ajax Event.
  • version added: 1.0
  • .ajaxStop( Function handler() )
  • handler() 该函数将被调用。

每当完成一个Ajax请求,jQuery检查是否有 任何其他未完成的Ajax请求。如果未检查到,jQuery触发ajaxStop事件。任何和所有的已被.ajaxStop()方法注册的处理程序将在这是全部执行。 ajaxStop事件也会在最后一个未完成的ajax请求被取消时触发,具体触发点是beforeSend回调返回false时触发。

为了观察这个方法的行为,我们可以建立一个基本的 Ajax请求:

<div class="trigger">Trigger</div>
<div class="result"></div>
<div class="log"></div>

我们可以给任何元素附加我们的事件处理程序:

$('.log').ajaxStop(function() {
  $(this).text('Triggered ajaxStop handler.');
});

现在,我们可以用任何一个能发送jQuery请求的方法发送一个ajax请求:

$('.trigger').click(function() {
  $('.result').load('ajax/test.html');
});

当用户点击按钮或 Ajax请求完成时,将会显示日志信息。

因为 .ajaxStop()作为一个jQuery对象实例的方法实施 , 我们可以在回调函数中使用this关键字来替代选择器元素。如下面的例子:

例子:

例1:

在所有Ajax请求结束后隐藏加载提示。
$("#loading").ajaxStop(function(){
      $(this).hide();
      });