Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Ожидание конца события в JS (https://javascript.ru/forum/misc/45409-ozhidanie-konca-sobytiya-v-js.html)

sergey390 27.02.2014 15:34

Ожидание конца события в JS
 
Подскажите, как правильно сделать ожидание конца цикла с применением setTimeout. После окончания цикла нужно запустить новый цикл с применением setTimeout.
Делаю между циклами проверку на равенство =0 идентификатора из первого цикла setTimeout. ( в конце цикла я его обнуляю и делаю clearTimeout)
Но проверяю опять циклом с setTimeout (рекурсивным) на равенство 0.
И в результате не получается последовательной работы циклов.
Не окончив первый цикл, запускается второй.(из-за отложенности запуска в setTimeout)

ksa 27.02.2014 16:03

Цитата:

Сообщение от sergey390
как правильно сделать ожидание конца цикла с применением setTimeout. После окончания цикла нужно запустить новый цикл с применением setTimeout.

Как вариант...

setTimeout(fnc1,5000);
function fnc1() {
   // тут цикл
   setTimeout(fnc2,5000);
};
function fnc2() {
   // тут цикл
};

kostyanet 28.02.2014 12:02

Цитата:

Сообщение от sergey390
сделать ожидание конца цикла

какой это цикл который ждать надо?

deivan 28.02.2014 13:32

var circle = function (n){
    setTimeout(function(){
        // здесь делаем какие-то нужные действия
        // и запускаем ожидание повторно
       circle(10000);
    }, n);
}
circle(10000);

sergey390 03.03.2014 12:20

Цитата:

Сообщение от kostyanet (Сообщение 299974)
какой это цикл который ждать надо?

c использованием setTimeout. Задержка исполнения функции влияет на следующие команды: последний цикл еще не запустился, но следующие команды уже работают, и этот цикл запускается через несколько выполненных команд


Часовой пояс GMT +3, время: 08:50.