我正在编写一个网页,并希望每秒在我的目录中自动刷新图像。我写了代码,但我不确定为什么它不起作用。
<html>
<SCRIPT language="JavaScript" type="text/javascript">
var t = 1 // Interval in Seconds
images = new Array('foo.png'); //URLs of the Images
function Start() {
tmp = new Date();
tmp = "?"+tmp.getTime();
for (i=1;i<image.length;i++){
document.getElementById("img"+i).src = images[i]+tmp;
}
setTimeout("Start()", t*1000)
}
Start();
</SCRIPT>
<body>
<IMG src="foo.png" border="1" name="refresh" id="img1">
</body>
</html>
答案 0 :(得分:0)
问题是,数组索引从0开始而不是从1开始,循环变量从1开始,但是数组在索引0处只有1项,因此images[1]
将返回undefined。
var t = 1 // Interval in Seconds
images = new Array('foo.png'); //URLs of the Images
function Start() {
var tmp = "?" + new Date().getTime();
for (var i = 0; i < image.length; i++) {
document.getElementById("img" + (i + 1)).src = images[i] + tmp;
}
setTimeout("Start()", t * 1000)
}
Start();
答案 1 :(得分:0)
如@Arun P Johny
所述,数组索引从零开始。
您在for循环中使用了i<image.length
,但您的var名称为images
,请注意额外的s
。
由于i
的值从0
开始,因此将id
的{{1}}设置为<img>
img0