时钟实现

发表时间:2017-05-12 16:11:56 浏览量( 26 ) 留言数( 0 )

学习目标:

1、了解Java的历史

2、为什么要学习Java语言

3、端正学习态度


学习过程:

下面我们通过一个非常实用时钟示例来讲解一下知识,要实现这个时钟时间我们需要解决三个问题。

  • 获得当前时间,并格式化

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

  • 让时间动起来

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>

运行代码就可以看到,可以获得当前时间了。

attcontent/906c87b0-d0be-4873-b802-e3503aa15223.png

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 PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
   <title>timer.html</title>
    <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>
 </head>
 
 <body onload="getnow()">

  <span id="nowspan" >
  </span>
 
 </body>
</html>