Как мне подождать 1 секунду перед выполнением следующей функции?
Например, как в php есть sleep ()
Как мне подождать 1 секунду перед выполнением следующей функции?
Например, как в php есть sleep ()
setTimeout(f, 1000);
Установите тайм-аут для запуска функции через 1000 миллисекунд
window.setTimeout
[spec] < / sup>
window.setTimeout
[темная сторона] < / em>
Как упоминалось в комментариях. JavaScript является однопоточным, и этот поток используется совместно с потоком пользовательского интерфейса браузера.
Итак, вызывая функцию блокировки, например sleep
. Вы бы заблокировали только поток. Это также означает, что клиент не может взаимодействовать со страницей, пока она блокируется.
См. Программирование, управляемое событиями [wiki] < / a> статья для получения дополнительной информации
Несмотря на то, что setTimeout поддерживается во всех основных браузерах, я предпочитаю использовать библиотеку javascript, потому что обычно выполняется больше js, чем просто вызывает функцию тайм-аута. В ЮИ это:
YAHOO.lang.later(1000, this, function() {
...
});
Дополнительную информацию см. здесь.
Для этого вы можете использовать метод setTimeOut http://www.w3schools.com/js/js_timing.asp
setTimeout ("alertMsg ()", 1000);
функция alertMsg () {предупреждение ("Привет"); }
setTimeout
, поскольку она оценивается как setTimeout(function() { eval("myFunction()"); }, 3000)
. timeMsg
назначает дескриптор тайм-аута для t, но никогда не возвращает его, поэтому нет возможности очистить тайм-аут. Он также тесно связан с alertMsg
, потому что использует магическую строку в качестве обратного вызова выполнения.
- person Nick Husher; 22.07.2011