Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript setInterval()仅在此脚本中不在IE8中工作_Javascript_Setinterval - Fatal编程技术网

javascript setInterval()仅在此脚本中不在IE8中工作

javascript setInterval()仅在此脚本中不在IE8中工作,javascript,setinterval,Javascript,Setinterval,我制作了一个HTML表格,编写了一个脚本,通过id逐个访问其单元格(td),并每秒将其背景颜色更改为黄色。 我给了这些单元格ID“1”、“2”、“3”、“8”。 以下是脚本: var i=0; var intervalstop=setInterval(changecolor,1000); function changecolor() { document.getElementById((i++)%9+"").style.backgroundColor="yellow" ; doc

我制作了一个HTML表格,编写了一个脚本,通过id逐个访问其单元格(td),并每秒将其背景颜色更改为黄色。
我给了这些单元格ID“1”、“2”、“3”、“8”。
以下是脚本:

var i=0;
var intervalstop=setInterval(changecolor,1000);
function changecolor()
{
    document.getElementById((i++)%9+"").style.backgroundColor="yellow" ;
    document.getElementById((i-2)%9+"").style.backgroundColor="white" ;
}
这在Firefox和chrome上运行良好,但在IE8上只运行一次,没有重复(只有一个单元格变为黄色)

我想确保IE8在setinterval方面没有问题 并将脚本修改为每秒发出警报(“hi”),在IE8上运行良好 那么上面的代码和IE8之间有什么冲突?!
谢谢:)

HTML4不允许数字ID,可能IE8不支持。可能是您的ID以数字开头。如果您直接调用
changecolor()
,而不是从
setInterval()
,会发生什么?您有ID为“0”的单元格吗?函数第二次运行时,它将尝试查找该单元格。