用Javascript Date 控制某段时间内显示某段内容 在淘宝上面也是一种非常常见的效果 好像在前几天 也就是光棍节那天 淘宝做活动 页面最顶部有个导航 说什么活动倒计时两个小时 然后当时间到达某段时间时  说活动倒计时一个小时等等这种效果是用javascript控制 而并不是人坐在那边等 到了某段时间内 把上面的导航图片换掉!!今天我就把我去年写的一个简单这种效果javascript date这个js来给分享下 其实这个js也是我去年在另外一家公司写的一个简单的js组件  那是我还是刚刚做前端 也不是非常熟悉!!现在看看下面的HTML代码

 

 
  
  1. <div id="aa">New Web Project Page</div> 

假如页面就只是一段文字 然后给了一个ID  我现在要用js做的事情就是 获取当前的时间 然后通过传参的方式 给个开始时间 和 结束时间 然后用IF判断 当当前的时间>=开始时间 && 当前时间<=结束时间 时 我要让他们显示那一段文字出来 否则的话  我让他显示其他的内容!!下面来看看JS

 

 
  
  1.  
  2. /**  
  3.  * @author tugenhua  
  4.  * @ date 2011 11 15  
  5.  * @email tugenhua@126.com  
  6.  * 用Id来获取  
  7.  */ 
  8. function setTimeID(startTime,endTime,oldId){  
  9.     var myDate=new Date();  
  10.     var dateTime=myDate.getTime();  
  11.     var startT=new Date(startTime).getTime();  
  12.     var endT=new Date(endTime).getTime();  
  13.     var oldC=oldId;  
  14.         if(dateTime>=startT&&dateTime<=endT){  
  15.             document.getElementById(oldC).style.display='block';  
  16.         }else{  
  17.             document.getElementById(oldC).style.display='none';   
  18.         }  

页面调用的方式:

 

 
  
  1. <script type="text/javascript">  
  2.               
  3.             setTimeID("11/10/2011","11/20/2011","aa");  
  4.         </script> 

就可以了!为了更清晰 我在火狐下看js 截个图给看看

 

上面的数据是我运行那个js 而在firebug下看到的数据 当dateTime>=startTime && dateTime<=endTime时候 显示那个文字 否则的话显示其他的内容!!当然如果有其他情况下在某段时间内显示其他的内容的话 那么在js页面里再加 setTimeID("11/10/2011","11/20/2011","XX");就可以了