Вызов js-функции с использованием таймера JQuery

Есть ли способ реализовать таймер JQuery, например. каждые 10 секунд ему нужно вызвать функцию js.

Я попробовал следующее

window.setTimeout(function() {
 alert('test');
}, 10000);

но это выполняется только один раз, а затем никогда больше.

Ответ 1

Вы можете использовать это:

window.setInterval(yourfunction, 10000);

function yourfunction() { alert('test'); }

Ответ 2

window.setInterval(function() {
 alert('test');
}, 10000);

window.setInterval

Вызывает функцию повторно, с фиксированная временная задержка между каждым вызовом эта функция.

Ответ 3

Возможно, вы хотите проверить jQuery Timer для управления одним или несколькими таймерами.

http://code.google.com/p/jquery-timer/

var timer = $.timer(yourfunction, 10000);

function yourfunction() { alert('test'); }

Затем вы можете управлять им с помощью:

timer.play();
timer.pause();
timer.toggle();
timer.once();
etc...

Ответ 4

setInterval - это функция, которую вы хотите. Это повторяется каждые x миллисекунды.

window.setInterval(function() {
    alert('test');
}, 10000);

Ответ 5

jQuery 1.4 также включает метод .delay(duration, [queueName]), если вам нужно только один раз запустить его и уже начал использовать эту версию.

$('#foo').slideUp(300).delay(800).fadeIn(400);

http://api.jquery.com/delay/

Ooops.... моя ошибка, что вы искали событие для продолжения запуска. Я оставлю это здесь, кто-то может найти это полезным.

Ответ 8

Вы можете использовать метод setInterval(), также вы можете вызвать setTimeout() от вашей пользовательской функции, например

function everyTenSec(){
  console.log("done");
  setTimeout(everyTenSec,10000);
}
everyTenSec();

Ответ 9

function run() {
    window.setTimeout(
         "run()",
         1000
    );
}