繁体   English   中英

在jQuery / javascript中设置计时器

[英]Setting a timer in jQuery/javascript

我有一个图片幻灯片,可通过单击这样的按钮进行操作,例如“>”。 该按钮是ID为“ slideshowRight”的范围。

是否可以设置一个计时器,使其每5秒钟真正单击一次slideshowRight按钮,并在鼠标悬停在按钮上时停止并在鼠标悬停在按钮上时重新启动?

悬停不如每5秒单击一次那么关键。 我知道jQuery具有.click()函数。

谢谢阿米特

检查setTimeout和setinterval函数。 像这样的东西应该每5秒点击一次:

setInterval(function(){
  $("myButton").click();
}, 5000);

然后,您可以使用上述内容和clearInterval函数清除并在用户徘徊时开始间隔

它不应该叫做slideshowLeft吗? 那好吧,

如果有按钮,则:

slideshowRight.click(function() {
    // do some stuff
});

您实际上可以通过脚本触发对该按钮的点击:

slideshowRight.trigger('click');

但是我认为简单地重构函数会更整洁:

slideshowRight.click(slideshowRight_click);

function slideshowRight_click() {
    // do some stuff
}

基于此,您可以将时间间隔设置为以下时间:

var isHover = false;
setInterval(function() {

    if(isHover) return;  // do nothing!

    slideshowRight_click();

}, 5000); // every 5 sec

您可以像这样更改isHover的值:

slideshowRight.hover(function() { isHover = !isHover; });

悬停将在悬停时被调用一次,并在用户停止悬停按钮时再次被调用,其值将被设置为当前未设置的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM