我的主页上有一个用jquery制作的旋转横幅。它使用以下间隔
var countBlackButtons = $(".blackitems").size();
var changeTrigger = 0;
var changeIndex = 1;
function startNewChange() {
clearInterval(changeIndex);
changeTrigger = setInterval(function () {
changeIndex = changeIndex + 1;
if(changeIndex != (countBlackButtons + 1)) {
$("#hpbutton" + changeIndex).trigger("click");
} else {
changeIndex = 0;
}
//$("#homepageCaroselHolder").css({ "background": "url( " + eval("itembg" + changeIndex) + ")" });
}, 4000);
除了我想要在有人点击按钮时停止旋转时,这完全不同。我调查了clearinterval并认为这将做我需要做的事情:
$("#hpbutton1").click(function() {
currentItem = itembg1;
itemcount = 1;
$("#homepageCaroselHolder").fadeOut(function() {
$("#homepageCaroselHolder").css({ "background": "url(/media/284/jqueryhompepagecaroselbackground.jpg)" });
$("#homepageCaroselHolder").fadeIn();
});
//clear interval
clearInterval(changeTrigger);
});
但它只是继续旋转...还有什么我可以用来阻止旋转吗?
答案 0 :(得分:1)
这可能是因为如果您多次拨打startNewChange
,您将有多个时间间隔,因为clearInterval(changeIndex);
无法清除任何内容(应为clearInterval(changeTrigger);
)