Показывать счетчик во время запроса AJAX? - PullRequest
5 голосов
/ 02 октября 2009

Какой лучший способ показать счетчик?

Я подготовил div (id = "spinner"), который должен быть виден во время загрузки.

Ответы [ 3 ]

8 голосов
/ 02 октября 2009

Вы используете jQuery?

Если это так, вы можете использовать:

ajaxStart & ajaxStop: http://docs.jquery.com/Ajax

Например:

$(function(){

    // hide it first
    $("#spinner").hide();

    // when an ajax request starts, show spinner
    $.ajaxStart(function(){
        $("#spinner").show();
    });

    // when an ajax request complets, hide spinner    
    $.ajaxStop(function(){
        $("#spinner").hide();
    });
});

Вы можете немного настроить счетчик запросов, который увеличивается или уменьшается в случае, если у вас много одновременных запросов.

Если вы не используете jQuery, проверьте исходный код jQuery, для которого события ajaxStart фактически регистрируются в простом старом JavaScript.

НТН Alex

2 голосов
/ 08 февраля 2013

Я использовал это в своем приложении rails. Это сработало для меня:

$(document).ajaxSend(function(r, s) {
$("#spinner").show();});


$(document).ajaxStop(function(r, s) {
$("#spinner").fadeOut("fast");});
1 голос
/ 02 октября 2009
$().ajaxSend(function(r, s) {
    $("#spinner").show();
});

$().ajaxStop(function(r, s) {
    $("#spinner").fadeOut("fast");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...