使用 JQuery 定时器调用 js 函数

IT技术 javascript jquery
2021-01-16 16:53:28

有没有办法为 JQuery 实现一个计时器,例如。每 10 秒它需要调用一个 js 函数。

我尝试了以下

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

但这只会执行一次,然后再也不会执行。

6个回答

你可以使用这个:

window.setInterval(yourfunction, 10000);

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

window.setInterval

重复调用一个函数,在每次调用该函数之间有一个固定的时间延迟。

可能想查看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...
不错的实用程序。允许控制生命周期。
2021-03-28 16:53:28
我收到一个错误:(“类型错误:$.timer 不是函数”
2021-04-01 16:53:28
当一个计时器需要控制另一个计时器时非常有用
2021-04-04 16:53:28
那是因为您需要从链接中获取插件。
2021-04-04 16:53:28

setInterval是您想要的功能。每 x 毫秒重复一次。

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

jQuery 1.4 还包括一个 .delay( duration, [ queueName ] ) 方法,如果您只需要它触发一次并且已经开始使用该版本。

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

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

oop......我的错误,你正在寻找一个事件来继续触发。我会把这个留在这里,有人可能会觉得它有帮助。