當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。