javascript - 在悬停中使用 jquery 启动和停止计时器

标签 javascript jquery timer hover

在 JavaScript 计时器停止后,你们会如何重新启动它。基本上我需要计时器停止,然后在推出 div 时重新开始。我有

var 计时器 = setInterval(myFunction, 1000);
定时器

function myFunction(){<br/>
    if(){
        do this
    }
    else if () {
       do this
    }
};

然后我有

$("td").hover(
    function () {
        window.clearInterval()
    },<br/>
    function () {
        timer
    }
);

一切正常,除了悬停关闭时不会再次启动。如果我将一个新的计时器置于悬停状态,则每次您悬停和关闭时计时器都会开始加速......任何想法。 谢谢

最佳答案

var intervalID = setInterval(myFunction, 1000);

function myFunction(){
    //logic goes here
};


$("td").hover( function () {
    window.clearInterval(intervalID)
    },
    function () {
    intervalID = setInterval(myFunction, 1000);
} );

说明:发生的情况是 setInterval 返回与该间隔关联的ID

我做了一点jsFiddle来证明它有效。

注意:这不会暂停当前的间隔。它会停止它并再次启动它。因此,如果您在 9 秒处以 10 秒为间隔并停止它。当再次启动时,将需要另外 10 秒。

关于javascript - 在悬停中使用 jquery 启动和停止计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5986596/

相关文章:

java - Android 有什么更好的?定时器还是闹钟?

javascript - Handlebars 代码有什么问题?

javascript - 当我使用 jquery 时制作一个 DIV 100%

php - jQuery $.post 请求失败

jquery - 退出 PhoneGap 中的移动应用程序?

java - 等待计时器在 Java 中完成

javascript - 如何首先加载动态插入的 img

javascript - 如何在 Canvas 中旋转图像

javascript - 如何比较数组的多个对象中的属性值?

linux - Linux 中的 HTimer(高分辨率定时器)