猿问

for循环里嵌套定时器,点击tab切换时出现bug,哪位能帮忙看下问题出在哪里

无标题文档
*{
padding:0;
margin:0;
list-style:none;
}
body{
min-width:320px;
max-width:640px;
margin:0auto;
}
.nav{
border-bottom:1pxsolid#666;
overflow:hidden;
}
.navli{
float:left;
width:25%;
height:40px;
line-height:40px;
text-align:center;
}
.navli.active{
border-bottom:2pxsolidred;
}
.list{
display:none;
}
.list.active{
display:block;
}
.listli{
height:40px;
border-bottom:1pxsolid#ccc;
}
1
  • 2
  • 3
  • 4
  • $(function(){
    vardata=[
    {
    hasclick:true,
    list:[
    {time:160},
    {time:150},
    {time:140},
    {time:130}
    ]
    },
    {
    hasclick:true,
    list:[
    {time:260},
    {time:250},
    {time:240},
    {time:230}
    ]
    },
    {
    hasclick:true,
    list:[
    {time:360},
    {time:350},
    {time:340},
    {time:330}
    ]
    },
    {
    hasclick:true,
    list:[
    {time:460},
    {time:450},
    {time:440},
    {time:430}
    ]
    }
    ];
    varIndex=0;
    timeFn()
    $(".navli").click(function(){
    var_this=this
    Index=$(this).index();
    $(this).addClass("active").siblings().removeClass("active");
    $(".list").eq(Index).addClass("active").siblings().removeClass("active");
    timeFn()
    })
    functiontimeFn(){
    varlist=data[Index].list;
    for(vari=0;i(function(i){
    vartimer=setInterval(function(){
    vart=list[i].time;
    t--
    list[i].time=t;
    $(".list").eq(Index).find("li").eq(i).html(t)
    },1000);
    })(i);
    }
    }
    })
    墨色风雨
    浏览 525回答 2
    2回答

    www说

    就是切换的时候塞数字的问题,为什么要用定时器呢,而且还是间隔一段时间执行的你不停的点击不就有越来越多的定时器在执行么,后面都不知道谁先执行,谁后执行
    随时随地看视频慕课网APP

    相关分类

    JavaScript
    我要回答