我有一个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);
});