JavaScript时钟无法正确显示

Aar*_*Lee 1 html javascript clock

我一直在自学JavaScript,我还是比较新的,我试图将时钟功能添加到我的网站,但是,我看不到要显示它,这是我的完整代码:

<html>
<head>
<script type="text/javascript">
    function tick() {
        var hours, minutes, seconds, ap;
        var intHours, intMinutes, intSeconds;
        var today;

        today = new Date();

        intHours = today.getHours();
        intMinutes = today.getMinutes();
        intSeconds = today.getSeconds();

        if (intHours == 0) {
            hours = "12:";
            ap = "Midnight";
        } else if (intHours < 12) {
            hours = intHours + ":";
            ap = "a.m";
        } else if (intHours == 12) {
            hours = "12:";
            ap = "noon";
        } else {
            intHours = intHours - 12
            hours = intHours + ":";
            ap = "p.m.";
        }
        if (intMinutes < 10) {
            minutes = "0" + intMinutes + ":";
        } else {
            minutes = intMinutes + ":";
        }
        if (intSeconds < 10) {
            seconds = "0" + intSeconds + " ";
        } else {
            seconds = intSeconds + " ";
        }
        timeString = hours + minutes + seconds + ap;

        Clock.innerHTML = timeString;

        window.setTimeout("tick();", 100);
    }

    //--></script>
</head>
<body>
<div id="Clock" align="center" style="font-family: Verdana; font-size: 10px; color:#000000"></div>
 </body>
 </html>
Run Code Online (Sandbox Code Playgroud)

正如我所说,我运行它,据我所知,它应该运行良好,因为我说我有点新,所以也许有人可以帮助我.

再次感谢大家.

编辑:在任何人说之前,我充分意识到有这种事情的预制工作示例,例如jQuery时钟等,但我想从头开始制作一个.

Del*_*ani 6

它没有启动,主要是因为您最初需要至少调用一次该函数:

tick();
Run Code Online (Sandbox Code Playgroud)

无论你从哪里学习HTML和JavaScript,都要立即停止学习 ; 你正在学习的代码习惯和方法是非常非常差的和过时的.

问题包括:

  • 没有DOCTYPE: <!DOCTYPE html>
  • div#Clock作为全球变量访问Clock,已被弃用,应该是document.getElementById('Clock');
  • 使用字符串setTimeout,当它真的应该setTimeout(tick, 100);
  • 在CSS中align使用时,使用deprecated 属性text-align: center;
  • 使用'旧浏览器'JavaScript注释技巧
  • 通过style属性使用内联CSS ,这构成了表示和内容的差分

  • 不是问题.它应该是`window.onload = tick;`没有括号. (2认同)