javascript实现页面的实时时钟显示示例

javascript实现页面的实时时钟显示示例

时钟实现

实现这个时钟时间需要解决以下三个问题:

  • 获得当前时间,并格式化
  • 如何可以在页面中显示时间
  • 让时间动起来

1、获得当前时间,并格式化

要获得当前时间,可以使用JavaSctipt的Date对象,默认构造函数会返回当前时间。存储日期为自 1970 年 1 月 1 日 00:00:00以来的毫秒数。

setXxx 这些方法用于设置时间和日期值

getXxx 这些方法用于获取时间和日期值

实现代码如下:  

function getnow(){

      //1、获得当前时间,格式化时间

      var now=new Date(); 

      var year=now.getFullYear(); 

      var month=now.getMonth()+1;

      if(month<10){

       month="0"+month;

      } 

      var date=now.getDate();

      if(date<10){

       date="0"+date;

      }

     var hour=now.getHours();

      if(hour<10){

       hour="0"+hour;

      }

     var minute=now.getMinutes();

      if(minute<10){

       minute="0"+minute;

      } 

      var second=now.getSeconds();

      if(second<10){

       second="0"+second;

      }

      var nowstr=year+"年"+month+"月"+date+"日 "+hour+":"+minute+":"+second;

     alert(nowstr);

}

在body标签中使用onLoad事件绑定这个函数,使页面一加载就运行这个时钟。

 <body οnlοad="getnow()">

 </body>

运行代码就可以看到如下效果:

javascript实现页面的实时时钟显示示例

2、如何可以在页面中显示时间

目的当然不是要通过弹出框的方式显示时间,而是让他在页面中显示,可以在页面中定义一个span标签显示时间,如何可以使用JavaScript操作标签的内容呢?这里就需要用到内置对象document了,它提供了一个getElementById方法,可以根据id获得标签对象,然后就可以修改这个对象了。现在doby中顶一个一个span对象,并定义id属性,值为nowspan,代码如下:   

 <body οnlοad="

  <span id="nowspan" >

  </span>

 </body>

修改上面的javascript代码,获得这个对象并把格式化好的时间赋给它。

// alert(nowstr);      

//2、显示时间 html

 //获得标签对象

var nowspan=document.getElementById("nowspan");

nowspan.innerHTML=nowstr;

3、让时间动起来

要让时间动起来可以使用setTimeout("函数",毫秒数) 设置定时器:经过指定毫秒值后执行某个函数。实现代码如下:

//3、使时间动起来

setTimeout("getnow()", 1000);

完整代如下:

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Test</title>
</head>
<script type="text/javascript">
  function getnow(){
      //1、获得当前时间,格式化时间
      var now=new Date(); 
      var year=now.getFullYear(); 
      var month=now.getMonth()+1;
      if(month<10){
       month="0"+month;
      } 
      var date=now.getDate();
      if(date<10){
       date="0"+date;
      }
     var hour=now.getHours();
      if(hour<10){
       hour="0"+hour;
      }
     var minute=now.getMinutes();
      if(minute<10){
       minute="0"+minute;
      } 
      var second=now.getSeconds();
      if(second<10){
       second="0"+second;
      }
      var nowstr=year+"年"+month+"月"+date+"日 "+hour+":"+minute+":"+second;
      //alert(nowstr);
      //2、显示时间 html
      //获得标签对象
      var nowspan=document.getElementById("nowspan");
      nowspan.innerHTML=nowstr;
      //3、使时间动起来
      setTimeout("getnow()", 1000);
}
</script>
<body onLoad="getnow()">
<span id="nowspan" />
</body>
</html>

运行代码效果:

javascript实现页面的实时时钟显示示例