嘿我正在尝试使用javascript运行一个程序我希望程序一个接一个地显示4个图像,然后单击一个按钮,然后在4个图像循环后我希望它们停止循环我似乎无法做到这是我目前的代码:
<html>
<head>
<script>
var images = ["image1.png","image2.png","image3.png","image4.png"];
var imagenum = 0;
var timer;
function imageCycle()
{
if(++imagenum == 4)
imagenum = 0;
document.image.src = images[imagenum];
timer = setTimeout("imageCycle()",1000);
}
</script>
</head>
<body>
<img src="image1.png" name="image" width=800 height=600>
<form>
<input type="button" value="images" name="cycle images" onclick="imageCycle()">
</form>
</body>
</html>
非常感谢任何帮助!
答案 0 :(得分:0)
在您的代码中,您将继续安排该功能,这就是图像继续旋转的原因。
如果要停止显示的第四个图像,则必须将setTimeout行放在else语句中。
if (++imagenum == 4) {
imagenum = 0;
} else {
document.image.src = images[imagenum];
timer = setTimeout("imageCycle()",1000);
}
另一点,其他用户注意到,我只是在答案中报告。
您使用字符串:
imageCycle()
作为setTimeout的第一个参数,你应该只使用函数名。
timer = setTimeout(imageCycle, 1000);