时钟不工作?

时间:2013-02-19 16:27:18

标签: javascript clock

所以我跟着一个非常直接的视频教程,通过JS在你的网页上添加一个时钟。我有完全相同的代码,但它不适用于我的。有什么建议?谢谢!

这是我的代码:

<body>

    <div id="clockDisplay">00:00</div>


<!-- JAVASCRIPT starts here -------------------------------------------------------->

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" language="JavaScript">

$(window).load(function renderTime() {
    var currentTime = new Date () ;
    var diem = "AM" ;
    var h = currentTime.getHours() ;
    var m = currentTime.getminutes() ;
    var s = currentTime.getSeconds() ;

    if (h == 0) {
        h = 12;
    } else if (h > 12) {
    h = h -12;
    diem = "PM" ;
    }
    if (h < 10) {
        h = "0" + h;
    }
    if (m < 10) {
        m = "0" + m;
    }
    if (s < 10) {
        s = "0" + s;
    }

    var myClock = document.getElementyID('clockDisplay');
    myClock.textContent = h + ":" + m + ":" + s + " " + diem;
    setTimeout(renderTime()' ,1000) ;
};
renderTime() ;

</script>

<!-- JAVASCRIPT ends here --------------------------------------------------------->

</body>

4 个答案:

答案 0 :(得分:2)

您的setTimeout代码中存在语法错误(引用不匹配)。你永远不应该使用字符串作为setTimeout的第一个参数。

setTimeout(renderTime, 1000);

如果您将Javascript代码放在带有$(window).load()

的元素之后,则不需要id="clockDisplay"
function renderTime() {
   ...
}
renderTime();

这些也需要改变。

getElementById()
getMinutes()

答案 1 :(得分:0)

不知道你的后续教程,但我会改变这一行:

myClock.textContent = h + ":" + m + ":" + s + " " + diem;

到此:

myClock.innerHTML = h + ":" + m + ":" + s + " " + diem;

答案 2 :(得分:0)

要解决的问题太多了,这是我的代码:

<body>

    <div id="clockDisplay">00:00</div>


<!-- JAVASCRIPT starts here -------------------------------------------------------->

<script type="text/javascript" language="JavaScript">

function renderTime() {
    var currentTime = new Date () ;
    var diem = "AM" ;
    var h = currentTime.getHours() ;
    var m = currentTime.getMinutes() ;
    var s = currentTime.getSeconds() ;

    if (h == 0) {
        h = 12;
    } else if (h > 12) {
    h = h -12;
    diem = "PM" ;
    }
    if (h < 10) {
        h = "0" + h;
    }
    if (m < 10) {
        m = "0" + m;
    }
    if (s < 10) {
        s = "0" + s;
    }

    var myClock = document.getElementById('clockDisplay');
    myClock.textContent = h + ":" + m + ":" + s + " " + diem;

}
window.onload = renderTime;
setInterval(renderTime ,1000) ;

</script>

<!-- JAVASCRIPT ends here --------------------------------------------------------->

</body>

要查看详细信息,请转到:Fixed issues detail link

答案 3 :(得分:0)

我已经在自己的个人开发网站上创建了一个数字时钟,但是它没有动画显示... 我的JavaScript如下:

下午07:23:45
<script>
function webClock() {
  var pos = "PM";
  var pickTime = new Date();
  var h = pickTime.getHours();
  var m = pickTime.getMinutes();
  var s = pickTime.getSeconds();

  if(h == 0){
    h = 12;

  }else if(h>12){
     h = h-12;
     pos="AM";
  }

 if(h<10){
      h = "0" + h;

  }
  if(m<10){
      m = "0" + m;

  }
  if(s<10){
      s = "0" + s;

  } 

   document.getElementById('MyClock').innerHTML= h + ":" + m + ":" + s + " " +"pos"; 

   setTimeout(webClock, 500);
}
webClock();

}
</script>