Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как проверить окончание работы setTimeout? (https://javascript.ru/forum/events/12057-kak-proverit-okonchanie-raboty-settimeout.html)

murka3000 28.09.2010 20:36

Как проверить окончание работы setTimeout?
 
Глупость, на мой взгяд, полная, что в js нет простой функции delay, но не суть.

Есть setTimeout с выполнением какой-то функции и с остановкой при определённом условии.

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

setTimeout у меня универсальный, поменять почти не реально (это к тому, что в там же и прописать что делать вместе с clearTimeout)

Пока что написал такую функцию для проверки (которая тоже работает с таймером, т.е. в ручную проверять не изменилось ли что):

function checkDelay(){
  setTimeout(function(){
    if(delayFlag) checkDelay();
    else alert("done");
  }, 500);
}


Но тогда такую функцию нужно прописывать для определения любого окончания работы setTimeout.

Sweet 28.09.2010 20:55

Вообще непонятно что хочешь!!! Научись корректно излагать свои мысли, а потом пиши на форуме.
Цитата:

Сообщение от murka3000
Глупость, на мой взгяд, полная, что в js нет простой функции delay, но не суть.

Создай свой язык с функцией delay.

Kolyaj 28.09.2010 21:28

Цитата:

Сообщение от murka3000
Глупость, на мой взгяд, полная, что в js нет простой функции delay, но не суть.

http://alljs.ru/articles/timeout/overview.html#nosleep
Цитата:

JavaScript язык однопоточный. Когда он выполняется в браузере, браузер никаких действий не производит. Если скрипт выполняется достаточно долго, становится заметно, что браузер "висит". Поэтому функция sleep вместе с приостановкой скрипта "вешала" бы браузер.

Sweet 28.09.2010 23:00

Цитата:

Сообщение от Kolyaj
http://alljs.test/articles/timeout/o...w.html#nosleep

:)

Kolyaj 28.09.2010 23:01

Бля. Из истории подхватился :)

murka3000 29.09.2010 16:33

Цитата:

Сообщение от Sweet (Сообщение 72237)
Создай свой язык с функцией delay.

Хохохо, какой продуктивный комментарий :)


А по делу: здесь рекомендуют реализовать это через флажки, что вообщем-то я и сделал. Будем иметь ввиду, что в JS это - единственный способ :(

Gozar 29.09.2010 22:20

murka3000, не хочу цитировать ваш первый пост целиком, т.к. там действительно бред.

не путайте глупость и реализацию.


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