时钟和日期javascript

时间:2013-04-13 21:13:28

标签: javascript

我正在创建一个JS时钟/日期。我以前有时间完美地工作然后我决定在我的时钟(日期)上添加更多。现在我无法弄清楚它为什么不起作用。如果有人能给我提示或想法如何解决它,我将非常感激。

function timedate()
    {
    var currentTime = new Date();
    var hours = currentTime.getHours();
    var minutes = currentTime.getMinutes();
    var dn="PM"
    var d = currentTime.getDate(); <--
    var day = (d < 10) ? '0' + d : d;
    var m = currentTime.getMonth() + 1; <--
    var month = (m < 10) ? '0' + m : m;
    var yy = currentTime.getYear(); <--
    var year = (yy < 1000) ? yy + 1900 : yy;
    if (hours<12)
 {
    dn="AM"
 }
    if (hours>12)
 {
    hours=hours-12
 }
    if (hours==0)
 {
    hours=12
 }
    if (minutes<=9)
 {
    minutes="0"+minutes 
 }
 var clocklocation = document.getElementById('timedate');
 clocklocation.innerHTML = "" +hours+":"+minutes+dn+""+day + "/" + month + "/" + year;
 setTimeout("timedate()", 1000); 
    }
timedate();

2 个答案:

答案 0 :(得分:1)

<强> DEMO

更改

setTimeout("timedate()", 1000); 

setTimeout(timedate, 1000); 

并删除&lt; -

确保它在onload上运行,或者在要在

中显示的标记之后运行

或者删除该行并更改

timedate();

setInterval(function() { timedate(); },1000)

DEMO with setInterval

答案 1 :(得分:0)

如果您使用setTimeout(timedate, 1000)而不是当前的魔术字符串版本设置超时,it works 1


1 我冒昧地为你的代码添加秒,以明确时钟更新。当然,您还需要从代码中删除<--