Possible Duplicate:
Calling a function every 60 seconds
Вызывайте функцию Javascript каждые 5 секунд непрерывно. Я видел событие setTimeOut. Будет ли это работать нормально, если я хочу это постоянно?
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Проверено и работает!