为了账号安全,请及时绑定邮箱和手机立即绑定

JS中setInterval方法中函数值的增加不正确。

JS中setInterval方法中函数值的增加不正确。

holdtom 2019-05-21 10:28:00
在setInterval()方法里面定义了一个值,使得x-=1;secondLength=60;setInterval(function(){console.log(secondLength);secondLength-=1;setDefault(secondtx,secondLength)},1000);大概是这个样子,第一遍运行的时候还正确,secondLength的值每秒递减一,第二遍运行的时候就变成每秒递减2了.不知道为什么,具体的程序有点长,这是我在写一个倒计时的东西的时候用到的..Codepen代码:https://codepen.io/GoodNetize...求助各位大佬们..这是个残废品,因为我好像写不出来了,接下来不知道怎么写..是仿照这个时钟的效果来写的.仿照这个:https://codepen.io/Khatybov/p...
查看完整描述

2 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

很可能的原因就是,你的这段定时器代码第二次打开时属于重复声明。可以再每次声明前先请一下定时器id
clearInterval(id);
id=setInterval(function(){},1000);
                            
查看完整回答
反对 回复 2019-05-21
?
胡说叔叔

TA贡献1804条经验 获得超8个赞

secondLength=60;
clearInterval(timer);
vartimer=setInterval(function(){
console.log(secondLength);
secondLength-=1;
setDefault(secondtx,secondLength)
},1000);
                            
查看完整回答
反对 回复 2019-05-21
  • 2 回答
  • 0 关注
  • 347 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信