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

时间:2011-05-13 02:15:25

标签: javascript jquery timer hover

你们如何在停止后重新启动javascript计时器。基本上我需要停止计时器,然后在div的推出时再次启动。我有

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

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

然后我

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

一切都很好,除非它在悬停时不会重新开始。如果我把一个新的计时器悬停在计时器开始加速,每次你盘旋和关闭....任何想法。 感谢

1 个答案:

答案 0 :(得分:3)

var intervalID = setInterval(myFunction, 1000);

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


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

说明:正在发生的事情是setInterval返回与该时间间隔关联的 ID

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

注意:这不会暂停当前的间隔。它会停止并再次启动它。因此,如果你在9秒内处于10秒的间隔并停止它。当它再次启动时,还需要10秒。