我想在JS& jQuery中制作一个简单的横幅旋转器。我希望它循环,但问题是它只在页面加载后立即触发,而不是从那时起。
这是我的代码:
var stop = false;
var tar = 1;
function slide(){
if(!stop){
switch(tar){
case 1:
jQuery("#um1").toggle(300, function(){jQuery("#um2").toggle(300);});
tar=2;
break;
case 2:
jQuery("#um2").toggle(300, function(){jQuery("#um3").toggle(300);});
tar=3;
break;
case 3:
jQuery("#um3").toggle(300, function(){jQuery("#um1").toggle(300);});
tar=1;
break;
}
}
}
jQuery(function(){
jQuery("#logosect").mouseenter(function(){ stop=true; });
jQuery("#logosect").mouseleave(function(){ stop=false; });
window.setInterval(slide(), 5000);
});
答案 0 :(得分:2)
您需要将函数引用传递给setInterval(),在您调用setInterval()时调用slide()
并将其返回的值(在本例中为undefined)传递为回调到setInterval
window.setInterval(slide, 5000);
答案 1 :(得分:1)
我建议clearInterval用于表演问题。这应该适合你。
weblogic.xml