基于自定义时间的Javascript时钟

标签 javascript time

我正在使用下面的以下脚本,我想做的是为脚本设置自定义时间并使其自动更新,而无需每次都重新设置时间。 (我只想设置一次时间并希望我的脚本跟踪时间并显示它)

当我运行脚本时,它显示:NaN:NaN:NaN AM

我的代码如下:

<div id="js_clock"> display clock here </div>

 <script language="javascript">
    function js_clock(clock_time)
    {   
         var clock_hours = clock_time.getHours();  
         var clock_minutes = clock_time.getMinutes();  
         var clock_seconds = clock_time.getSeconds();  
         var clock_suffix = "AM";     
         if (clock_hours > 11){
         clock_suffix = "PM";
         clock_hours = clock_hours - 12;
         }
         if (clock_hours == 0){
         clock_hours = 12;
         }

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

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

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

         var clock_div = document.getElementById('js_clock');
         clock_div.innerHTML = clock_hours + ":" + clock_minutes + ":" + clock_seconds + " " + clock_suffix;
         setTimeout("js_clock()", 1000);
    }

     var serverTime = new Date("09:20:50");
     js_clock(serverTime);
 </script>

最佳答案

您在创建日期时遇到问题,new Date("09:20:50"); 返回无效日期。

如果您想设置小时、分钟和秒,请使用

new Date(year, month, day [, hour, minute, second, millisecond ])

或者看看here .

您还忘记将日期传递给 setTimeout,请尝试:

setTimeout(function() {
    js_clock(new Date(/*pass hours minutes and seconds here*/))
}, 1000);

关于基于自定义时间的Javascript时钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11820970/

相关文章:

Golang fmt.Println 定时器

java - 在间隔的随机分钟内运行程序

c - strptime() 导致 EXC_BAD_ACCESS

javascript - 处理向上滚动和向下滚动 Jquery

javascript - Youtube 视频统计

javascript - 强制函数仅接受特定结构的对象(在 typescript/js 中)

python - 如何使用 pandas 现有列之一中的列表创建新列,并从另一列的列表中分配值?

javascript - 根据层次结构重置选择下拉列表

JavaScript 匿名函数行为

javascript - 拆分字符串,其中包括(/和 : ) into an array in Javascript