存档

2010年6月 的存档

一个简单的 JS 倒计时代码

2010年6月21日 2 条评论

公司的项目需要一个可以任意定时同时多次使用的倒计时,网上找了下都偏复杂,想了下自己整理了一个很简单的。

用法很简单,两个参数,第一个参数就是终止时间的时间戳,PHP 中 time() 输出的格式标准。二个参数是显示倒计时的 HTML 标签元素 ID 后缀。

function GetRTime(EndTime, id){
   var EndTime = new Date(EndTime * 1000);

   function run(){
      var StepTime = new Date();
      var runTime=EndTime.getTime() – StepTime;
      var nD=Math.floor(runTime/(1000 * 60 * 60 * 24));
      var nH=Math.floor(runTime/(1000*60*60)) % 24;
      var nM=Math.floor(runTime/(1000*60)) % 60;
      var nS=Math.floor(runTime/1000) % 60;
      var nMS=Math.floor(runTime/100) % 10;
      var nNS=Math.floor(runTime/10) % 10;
      if(nD> 0){
         document.getElementById(“RemainD”+id).innerHTML = nD;
      }else{
         document.getElementById(“RemainD”+id).innerHTML = 0;
      }
      if(nH> 0){
         document.getElementById(“RemainH”+id).innerHTML = nH;
      }else{
         document.getElementById(“RemainH”+id).innerHTML = 0;
      }
      if(nM> 0){
         document.getElementById(“RemainM”+id).innerHTML = nM;
      }else{
         document.getElementById(“RemainM”+id).innerHTML = 0;
      }
      if(nS> 0){
         document.getElementById(“RemainS”+id).innerHTML = nS;
      }else{
         document.getElementById(“RemainS”+id).innerHTML = 0;
      }
      if(nMS> 0){
         document.getElementById(“RemainMS”+id).innerHTML = nMS;
      }else{
         document.getElementById(“RemainMS”+id).innerHTML = 0;
      }
      if(nNS> 0){
         document.getElementById(“RemainNS”+id).innerHTML = nNS;
      }else{
         document.getElementById(“RemainNS”+id).innerHTML = 0;
      }
      setTimeout(run,10);
   }
   setTimeout(run,10);
}

分类: Javascript 标签: