欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

多個(gè)js毫秒倒計(jì)時(shí)同時(shí)進(jìn)行效果

 更新時(shí)間:2016年01月05日 08:37:59   作者:哈姆PP  
這篇文章主要以實(shí)例的方式講解多個(gè)js毫秒倒計(jì)時(shí)同時(shí)進(jìn)行效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例講解js毫秒倒計(jì)時(shí)同時(shí)進(jìn)行效果的代碼,分享給大家供大家參考,具體內(nèi)容如下

實(shí)現(xiàn)功能:調(diào)用一個(gè)函數(shù),傳入html元素的id,和一個(gè)截止時(shí)間(unix時(shí)間戳),在該html元素中打印出到當(dāng)前到截止時(shí)間為止的倒計(jì)時(shí),精確到毫秒;

效果圖如下:

<!DOCTYPE html>
<html>

 <head>
  <meta charset="UTF-8">
  <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
  <title></title>
  <style>
   div{
    width: 100%;
    height: 50px;
    margin-bottom: 5px;
    background: yellowgreen;
   }
  </style>
 </head>

 <body>
  
  <h2>毫秒的倒計(jì)時(shí)</h2>
  <div id="timer1"></div>
  <div id="timer2"></div>
  <div id="timer3"></div>
  <div id="timer4"></div>
  <script>
   var addTimer = function(){
    var list = [],
     interval;
     
    return function(id,timeStamp){
     if(!interval){
      interval = setInterval(go,1);
     }
     list.push({ele:document.getElementById(id),time:timeStamp});
    }
    
    function go() { 
     for (var i = 0; i < list.length; i++) { 
      list[i].ele.innerHTML = changeTimeStamp(list[i].time); 
      if (!list[i].time) 
       list.splice(i--, 1); 
     } 
    }

    //傳入unix時(shí)間戳,得到倒計(jì)時(shí)
    function changeTimeStamp(timeStamp){
     var distancetime = new Date(timeStamp*1000).getTime() - new Date().getTime();
     if(distancetime > 0){ 
              //如果大于0.說(shuō)明尚未到達(dá)截止時(shí)間    
      var ms = Math.floor(distancetime%1000);
      var sec = Math.floor(distancetime/1000%60);
      var min = Math.floor(distancetime/1000/60%60);
      var hour =Math.floor(distancetime/1000/60/60%24);
      
      if(ms<100){
       ms = "0"+ ms;
      }
      if(sec<10){
       sec = "0"+ sec;
      }
      if(min<10){
       min = "0"+ min;
      }
      if(hour<10){
       hour = "0"+ hour;
      }
      
      return hour + ":" +min + ":" +sec + ":" +ms;
     }else{
              //若否,就是已經(jīng)到截止時(shí)間了
      return "已截止!"
     } 
    }    
   }();
   
   addTimer("timer1",1451923200);//1月5日00點(diǎn),unix時(shí)間戳自己去百度一下,就有的
   addTimer("timer2",1451926800);//1月5日01點(diǎn)
   addTimer("timer3",1451930400);//1月5日02點(diǎn)
   addTimer("timer4",1452020400);//1月6日03點(diǎn)

  </script>
  
 </body>

</html>

如何使用這個(gè)函數(shù)?

addTimer("#id",時(shí)間戳int); 

PS:

其實(shí)這個(gè)函數(shù)有一個(gè)小小的問(wèn)題:就是并不會(huì)顯示截止天數(shù);因?yàn)槔习灞硎疚覀兊牡褂?jì)時(shí)時(shí)間最多也就幾個(gè)小時(shí),所以在判斷倒計(jì)時(shí)的小時(shí)和天數(shù)上,我也就懶得寫(xiě)那么多了。所以如果傳入的時(shí)間戳距今超過(guò)了1天。那么你會(huì)看到如此結(jié)果:02:11:32:874~~只剩2個(gè)小時(shí)了!明顯不對(duì)是不是?

so,有2個(gè)方案這里:

方法1:把var hour =Math.floor(distancetime/1000/60/60%24);改成var hour =Math.floor(distancetime/1000/60/60);

    如果截止時(shí)間距今超出一天了,小時(shí)位置會(huì)顯示大于24的數(shù)字;比如:36:45:22:888

方法2:你自己再寫(xiě)一個(gè)計(jì)算天數(shù)的變量;

更多關(guān)于倒計(jì)時(shí)的文章請(qǐng)查看專題:《倒計(jì)時(shí)功能》

更多JavaScript時(shí)鐘特效點(diǎn)擊查看:JavaScript時(shí)鐘特效專題

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。

相關(guān)文章

最新評(píng)論