1. 程式人生 > >JQuery限時搶購 倒計時

JQuery限時搶購 倒計時

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>倒計時測試</title>
<script src="http://www.codefans.net/ajaxjs/jquery-1.6.2.min.js" type="text/javascript"></script>
<script>
  function lxfEndtime(){
          $(".lxftime").each(function(){
              var lxfday = $(this).attr("lxfday"); //用來判斷是否顯示天數的變數
              var time = $(this).attr("endtime"); //獲取到時間

              //如果時間格式是2012-2-12需要轉換成2012/2/12
              //time = time.replace(/-/g, "/"); //替換所有“-”,g為全域性標誌,另外如果加i就忽略大小寫:2010/01/05
              //var nowtime = time.replace((/-/g, "/"); //替換所有“-”,g為全域性標誌,另外如果加i就忽略大小寫:2010/01/05

                var endtime = new Date($(this).attr("endtime")).getTime();//取結束日期(毫秒值)
                var nowtime = new Date().getTime();        //今天的日期(毫秒值)
                var youtime = endtime-nowtime;//還有多久(毫秒值)
                var seconds = youtime/1000;
                var minutes = Math.floor(seconds/60);
                var hours = Math.floor(minutes/60);
                var days = Math.floor(hours/24);
                var CDay= days ;
                var CHour= hours % 24;
                var CMinute= minutes % 60;
                var CSecond= Math.floor(seconds%60);//"%"是取餘運算,可以理解為60進一後取餘數,然後只要餘數。
                if(endtime<=nowtime){
                        $(this).html("已過期")//如果結束日期小於當前日期就提示過期啦
                        }else{
                                if($(this).attr("lxfday")=="no"){
                                        $(this).html("<i>剩餘時間:</i><span>"+CHour+"</span>時<span>"+CMinute+"</span>分<span>"+CSecond+"</span>秒");          //輸出沒有天數的資料
                                        }else{
                        $(this).html("<i>剩餘時間:</i><span>"+days+"</span><em>天</em><span>"+CHour+"</span><em>時</em><span>"+CMinute+"</span><em>分</em><span>"+CSecond+"</span><em>秒</em>");          //輸出有天數的資料
                                }
                        }
          });
   setTimeout("lxfEndtime()",1000);
  };
$(function(){
      lxfEndtime();
   });
</script>
<style type="text/css">
<!--
*{
        font-style: normal;
        font-weight: normal;}
.haveday {
        padding: 20px;
        border: 1px dashed #000;
        margin-right: auto;
        margin-left: auto;
        width: 300px;
}
-->
</style>
</head>
<body>
<div class="haveday">
<h1>含有天數的倒計時</h1>
<div class="lxftime" endtime="11/15/2011 17:24:0"></div>
<div class="lxftime" endtime="11/8/2011 3:3:20"></div>
<div class="lxftime" endtime="9/6/2015 6:1:0"></div>
<div class="lxftime" endtime="6/6/2016 9:3:5"></div>
</div>
<p></p>
<div class="haveday">
<h1>沒有天數的倒計時</h1>
<div class="lxftime" endtime="11/15/2011 17:24:0" lxfday="no"></div>
<div class="lxftime" endtime="11/8/2011 3:3:20" lxfday="no"></div>
<div class="lxftime" endtime="9/6/2015 6:1:0" lxfday="no"></div>
<div class="lxftime" endtime="6/6/2016 9:3:5" lxfday="no"></div>
</div>
</body>
</html>