暂停悬停在jquery中模拟下一个按钮

时间:2014-09-08 13:56:54

标签: jquery caroufredsel

我想知道,如何在“下一个”按钮的悬停模拟中暂停鼠标?

我有滑块,具有特定配置的next / prev按钮,我无法激活'auto'功能,因为'auto'滑动无法按需要配置(或者我不知道如何)。

我已经模拟了''next''按钮,名为#grid-next,就像这样:

function simulateClick(){
    $('#grid-next').click();
};

setInterval(simulateClick, 2000);

当我将鼠标放在滑块上时,我需要暂停模拟。****

(我知道如何配置常规的pauseOnHover,但这对我来说太具体了,我不知道怎么做)

3 个答案:

答案 0 :(得分:0)

function simulateClick(){
    $('#grid-next').click();
};

var triggerclick;

triggerclick = setInterval(simulateClick, 2000);

$('#yourslider').mouseenter(function() {
    clearInterval(triggerclick);
}).mouseleave(function() {
    triggerclick = setInterval(simulateClick, 2000);
});

答案 1 :(得分:0)

您可以使用clearTimeout功能清除计时器。 调用setInterval时,保存returnvalue并将其用作clearTimeout

中的参数

请记住使var全局可用

var t;
function startTimer()
{
    t = setInterval(simulateClick, 2000);
}

function stopTimer()
{
     clearInterval(t);
}

function simulateClick()
{
    console.log("Simulate click");
}

请参阅http://jsfiddle.net/Fizk/ykdgLmau/了解工作示例:)

答案 2 :(得分:0)

很像Alex的答案,但是使用hover()你可以使用mouseenter和mouseleave的回调:

function simulateClick(){
    $('#grid-next').click();
};

var triggerclick;

triggerclick = setInterval(simulateClick, 2000);

$( "#yourslider" ).hover(function() {
       clearInterval(triggerclick);
   }, function() {
         triggerclick = setInterval(simulateClick, 2000);
   }
 );