Ответ 1
Вы можете использовать setInterval()
, аргументы одинаковые.
const interval = setInterval(function() {
// method to be executed;
}, 5000);
clearInterval(interval); // thanks @Luca D'Amico
Possible Duplicate:
Calling a function every 60 seconds
Вызывайте функцию Javascript каждые 5 секунд непрерывно. Я видел событие setTimeOut. Будет ли это работать нормально, если я хочу это постоянно?
Вы можете использовать setInterval()
, аргументы одинаковые.
const interval = setInterval(function() {
// method to be executed;
}, 5000);
clearInterval(interval); // thanks @Luca D'Amico
Сделайте "рекурсивный" setTimeout
вашей функции, и он будет выполняться каждый раз в определенное время:
function yourFunction(){
// do whatever you like here
setTimeout(yourFunction, 5000);
}
yourFunction();
Как лучшие методы кодирования, используйте setTimeout
вместо setInterval
.
function foo() {
// your function code here
setTimeout(foo, 5000);
}
foo();
Обратите внимание, что это не рекурсивная функция. Функция не вызывается сама до ее окончания, она вызывает функцию setTimeout
, которая позже будет снова вызывать ту же функцию.
Для повторения действия в будущем существует встроенная функция setInterval
, которую вы можете использовать вместо setTimeout
. < ш > Он имеет аналогичную подпись, поэтому переход от одного к другому прост:
setInterval(function() {
// do stuff
}, duration);
Хороший рабочий пример здесь: http://jsfiddle.net/MrTest/t4NXD/62/
Плюс:
fade in / fade out
:hover
Проверено и работает!