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 onload="getnow()">

  </body>

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

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

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

  <body onload="

   <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>

运行代码效果:

猜你喜欢

转载自blog.csdn.net/weixin_42363997/article/details/81433417