首页 新闻 会员 周边

求组一个关于变速动画函数增加任意多个属性的小问题

0
悬赏园豆:10 [待解决问题]

关于清除定时器的判断,假设在某一次循环时,循环到最后一个属性,最后这个属性到达了目标而其它的属性还没有,这时结束循环后不会清除定时器吗???

function(element,json){
clearInterval(element.timeId);
element.timeId=setInterval(function(){
for (var attr in json){
var flag=true;
var current=parseInt(getStyle(element,attr));
var target=json[attr];
var step=(target-current)/10;
step=step>0?Math.ceil(step):Math.floor(step);
current+=step;
element.style[attr]=current+"px";
if (current!=target){
flag=false;
}
}
if(flag){
clearInterval(element.timeId);
}
},20);
}

简约的界面的主页 简约的界面 | 初学一级 | 园豆:192
提问于:2019-02-26 13:48
< >
分享
所有回答(1)
0

从你这段代码逻辑来看,只会判断最后一个属性的flag,如果是false,则不会清除定时器

三人乐乐 | 园豆:4819 (老鸟四级) | 2019-03-02 11:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册