如何为我的红绿灯序列javascript做一个连续循环?

时间:2016-02-27 16:29:58

标签: javascript arrays loops

我正在尝试做一个在没有用户输入的情况下自动运行的红绿灯序列。我现在有代码工作,但它只运行一次然后停止。那么我该如何改变这一点呢? 这是我的代码:

<!DOCTYPE html>
<html>
    <head>
        <script>
            var images = new Array()
            images[0] = "image2.jpg";
            images[1] = "image3.jpg";
            images[2] = "image4.jpg";
            setInterval("changeImage()", 3000);
            var x=0;

            function changeImage() {
                document.getElementById("img").src=images[x]
                x++;
            }
        </script>
    </head>
    <body>
        <img id="img" src="image1.jpg">
    </body>
</html> 

1 个答案:

答案 0 :(得分:3)

将余数赋值%=应用于具有数组长度的计数器。

function changeImage() {
    document.getElementById("img").src = images[x];
    x++;
    x %= images.length;
}