javascript – 悬停时jQuery暂停功能?

我有一个jQuery / JS函数,它使用setInterval循环遍历我的一些图像幻灯片.它只是翻了5秒……

现在我希望它暂停,如果我的鼠标悬停在它上面.我如何在setInterval函数上执行此操作?

var current = 1;

function autoAdvance() {
    if (current == -1) return false;

    jQuery('#slide_menu ul li a').eq(current % jQuery('#slide_menu ul li a').length).trigger('click', [true]);
    current++;
}

// The number of seconds that the slider will auto-advance in:
var changeEvery = jQuery(".interval").val();
if (changeEvery <= 0) {
    changeEvery = 10;
}
var itvl = setInterval(function () {
    autoAdvance()
}, changeEvery * 1000);

解决方法:

假设间隔在外部范围中定义,这样的东西会起作用:

$('.slideshow img').hover(function() {
  interval = clearInterval(interval);
}, function() {
  interval = setInterval(flip, 5000);
});
上一篇:Javascript函数setInterval()只能运行一次


下一篇:javascript – jQuery:ajax函数的延迟间隔,直到上一次运行完成