.ajaxStop()


.ajaxStop( handler )Возвращает: jQuery

Описание: Регистрирует обработчик которые вызывается когда все Ajax запросы будут выполнены. Является Ajax событием.

Всякий раз, когда Ajax запрос выполнен, jQuery проверяет наличие активных исходящих Ajax запросов. Если таковых нет, то jQuery инициирует событие ajaxStop. Все обработчики зарегистрированные при помощи метода .ajaxStop() выполняются в этот момент. Событие ajaxStop также инициируется если последний исходящий Ajax запрос отменен возвратом false в обработчике beforeSend.

Для наблюдения этого метода в действии, установим обработчик и вызовем Ajax load запрос:

1
2
3
<div class="trigger">Trigger</div>
<div class="result"></div>
<div class="log"></div>

Добавляем обработчик события к document:

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

Теперь, выполняем Ajax запрос при помощи одного из методов jQuery:

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

Когда пользователь кликает на элемент с классом trigger и после завершения Ajax запроса, сообщение показывается внутри элемента с классом log.

Примечания:

  • Начиная с версии jQuery 1.9, все обработчики для глобальных Ajax событий, включая добавленные методом .ajaxComplete(), должны быть прикреплены к to document.
  • Если $.ajax() или $.ajaxSetup() вызваны с параметром global равным false, то обработчики .ajaxComplete() не будут вызваны.

Пример:

Прячет сообщение о загрузке после того как Ajax запросы будут выполнены.

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