setInterval 执行3次后,就不执行了,不是说好我不取消就会一直执行下去的吗?
varcurrentindex=1;//现在需要显示出来的banner的序号varnumOfBanner=5;//banner总数$("#flashBg").css("b...
var currentindex=1;//现在需要显示出来的banner的序号
var numOfBanner=5;//banner总数
$("#flashBg").css("background-color",$("#flash1").attr("name"));
function changeflash(i) {
currentindex=i;
for (j=1;j<=numOfBanner;j++){
if (j==i)
{
$("#flash"+j).fadeIn("normal");
$("#flash"+j).css("display","block");
$("#f"+j).removeClass();
$("#f"+j).addClass("dq");
$("#flashBg").css("background-color",$("#flash"+j).attr("name"));
}
else{
$("#flash"+j).css("display","none");
$("#f"+j).removeClass();
$("#f"+j).addClass("no");
}
}
//clearInterval(timerID);
//startAm();
}
function startAm(){
timerID = setInterval("timer_tick()",1000);//8000代表间隔时间设置
}
function stopAm(){
clearInterval(timerID);
}
function timer_tick() {
currentindex=currentindex>=numOfBanner ? 1:currentindex+1;
changeflash(currentindex);
}
$(document).ready(function(){
startAm();
$(".flash_bar div").mouseover(function(){stopAm();}).mouseout(function(){startAm();});
});
我注解掉的两行代码,是为了解决这个问题的,方法是每次都删掉Interval,再重新加载Interval...但是setInterval本来就应该每隔一段时间运行的,应该不用这样做的,我想知道是不是我的代码哪里没写好才出这个问题?
//我搞错了,是执行两次之后就不执行了 展开
var numOfBanner=5;//banner总数
$("#flashBg").css("background-color",$("#flash1").attr("name"));
function changeflash(i) {
currentindex=i;
for (j=1;j<=numOfBanner;j++){
if (j==i)
{
$("#flash"+j).fadeIn("normal");
$("#flash"+j).css("display","block");
$("#f"+j).removeClass();
$("#f"+j).addClass("dq");
$("#flashBg").css("background-color",$("#flash"+j).attr("name"));
}
else{
$("#flash"+j).css("display","none");
$("#f"+j).removeClass();
$("#f"+j).addClass("no");
}
}
//clearInterval(timerID);
//startAm();
}
function startAm(){
timerID = setInterval("timer_tick()",1000);//8000代表间隔时间设置
}
function stopAm(){
clearInterval(timerID);
}
function timer_tick() {
currentindex=currentindex>=numOfBanner ? 1:currentindex+1;
changeflash(currentindex);
}
$(document).ready(function(){
startAm();
$(".flash_bar div").mouseover(function(){stopAm();}).mouseout(function(){startAm();});
});
我注解掉的两行代码,是为了解决这个问题的,方法是每次都删掉Interval,再重新加载Interval...但是setInterval本来就应该每隔一段时间运行的,应该不用这样做的,我想知道是不是我的代码哪里没写好才出这个问题?
//我搞错了,是执行两次之后就不执行了 展开
2个回答
2014-04-09
展开全部
肯定有条件让程序中断的了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询