菜鸟求助!setInterval执行函数的时候最后一次执行为什么不能执行完成函数
|
setInterval('changeColor()',300); var arr = document.getElementsByTagName('li'); var i = 0; var j = i-1; var count = 0; function changeColor(){ count++; arr[i++].style.backgroundColor="yellow"; if(j >= 0){ arr[j].style.backgroundColor = "white"; } j++; } arr[29].style.background="white"; 这是我写的代码,效果就是本来背景为蓝色的30个方块,每一个方块先变为黄色,然后变为白色,但是现在最后一个方块只显示黄色而不能变成白色,求助各位大神! |
免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。
版权声明:作者保留权利,不代表本站立场。
|
|
|
|
|
|
|
|
setInterval('changeColor()',300); vararr=document.getElementsByTagName('li'); vari=0; varj=i-1; varcount=0; functionchangeColor(){ count++; if(i>=29)i=29; if(j>=29)j=29; arr[i++].style.backgroundColor="yellow"; if(j>=0){ arr[j].style.backgroundColor="white"; } j++;}i超过29就会出现错误,无法向下进行了,要加条件语句控制一下,最好在j的if语句里把定时器清除了,定时器一直运行对页面也是有影响的。 |
|
|
|
|
|
|
|
|
最后一行不是backgroundColor吗吗吗吗? |
|
|
|
|
|
|
|