используя цикл в jquery, а затем сделать паузу между каждой итерацией справки - PullRequest
0 голосов
/ 01 мая 2011

Как дела,

Нужна помощь, с некоторыми для цикла и паузы.Я провел некоторые исследования сам и продолжаю сталкиваться с функцией setTimeout (), но мне нужна помощь в ее понимании, или если кто-то может помочь мне с тем, как внедрить ее в мой код, или есть другой способ.* Я хотел бы знать, как сделать паузу после выполнения функции $ .ajax, прежде чем перейти к следующему приращению.

Пожалуйста, помогите!Спасибо:)

Ответы [ 3 ]

2 голосов
/ 01 мая 2011

Вы имеете в виду «дождаться окончания запроса, чтобы отправить следующий»?

Если это так, задайте еще один параметр в вызове .ajax.

async: false

С jQuery.ajax doc

async :: Boolean - по умолчанию: true

По умолчанию все запросы отправляются асинхронно (т. е. по умолчанию установлено значение true).Если вам нужны синхронные запросы, установите для этого параметра значение false.Междоменные запросы и dataType: запросы «jsonp» не поддерживают синхронную работу.Обратите внимание, что синхронные запросы могут временно блокировать браузер, отключая любые действия, когда запрос активен.

2 голосов
/ 01 мая 2011

А как же ...

(function() {

    var index = 0;

    function next() {

        setTimeout(function() {
            if (index == counter) {
                return;
            }

            // Do what you need to do   
            index++;
            next();
        }, 1000);

    }

})();

В качестве альтернативы, вы можете сделать функцию стиля сна с Date и do { ... } while() петлей. Но setTimeout() намного лучше, потому что любая функция стиля JavaScript sleep должна сидеть зацикливаться, пока не будет готова к завершению, что на самом деле не sleep .

0 голосов
/ 01 мая 2011

http://jsfiddle.net/samccone/hkjpA/

Привет, Андрей, этот пример должен работать просто отлично, надеюсь, что это поможет тебе

...