当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JQuery .ajaxStop()用法及代码示例


用法
.ajaxStop( handler ) => jQuery

说明:注册一个处理程序以在所有 Ajax 请求完成时调用。这是个阿贾克斯事件.

  • 添加的版本:1.0.ajaxStop( handler )

    • handler
      类型:Function ()
      要调用的函数。

每当一个 Ajax 请求完成时,jQuery 都会检查是否还有其他未完成的 Ajax 请求。如果没有剩余,jQuery 会触发 ajaxStop 事件。此时会执行已使用 .ajaxStop() 方法注册的所有处理程序。如果通过在 beforeSend 回调函数中返回 false 来取消最后一个未完成的 Ajax 请求,也会触发 ajaxStop 事件。

要观察此方法的实际效果,请设置一个基本的 Ajax 加载请求:

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

将事件处理程序附加到文档:

$( document ).ajaxStop(function() {
  $( ".log" ).text( "Triggered ajaxStop handler." );
});

现在,使用任何 jQuery 方法发出 Ajax 请求:

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

当用户单击类trigger 的元素并且Ajax 请求完成时,将显示日志消息。

其他注意事项:

  • 从 jQuery 1.9 开始,jQuery global Ajax events 的所有处理程序,包括使用 .ajaxStop() 方法添加的处理程序,must 都附加到 document
  • 如果在 global 选项设置为 false 的情况下调用 $.ajax()$.ajaxSetup() ,则不会触发 .ajaxStop() 方法。

例子:

在所有 Ajax 请求停止后隐藏加载消息。

$( document ).ajaxStop(function() {
  $( "#loading" ).hide();
});

相关用法


注:本文由纯净天空筛选整理自jquery.com大神的英文原创作品 .ajaxStop()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。