javascript setInterval()不会在计时器上触发

时间:2011-11-12 23:15:14

标签: javascript setinterval

我正在研究这个简单的时钟作为学习项目

<html>
<head>
<script type="text/javascript">
    window.onload = function()
    {
        var da = document.getElementById("display_area");

    function setClockDisplay()
    {
        var time = new Date();
        var hour = time.getHours();
        var minute = time.getMinutes();
        var second = time.getSeconds();

        var currentTime = hour + ":" + minute + ":" + second;

        da.innerHTML = currentTime;
    }

        setInterval(setClockDisplay(), 1000);
    }
</script>
</head>
<body>
    <p id="display_area"></p>
</body>
</html>

当我转到页面时,它会显示最初加载页面时的时间戳,但不会像我想的那样每秒更新一次。我错过了什么?

1 个答案:

答案 0 :(得分:7)

使用:

setInterval(setClockDisplay, 1000);

代替。 setInterval需要一个函数引用(之前你正在调用该函数)。

更新了代码: http://jsfiddle.net/VvG3k/