js制作倒计时

1.字符串转时间

            function stringToDate(DateStr){
               var starttime= DateStr.substring(0,10);
               var day= DateStr.substring(11,19);
               var d= starttime.split('-');
               if(day != null){
                       var t= day.split(':');
                       d[1]=d[1]-1; //月份减一   
                       var d= new Date(d[0],d[1],d[2],t[0],t[1],t[2]); 
               }else{
                       d[1]=d[1]-1; //月份减一   
                       var d= new Date(d[0],d[1],d[2]);
               }
               d.setDate(d.getDate());
               return d;  
            }

2.计算结束时间

            function StringToDateArray(DateStr,PERIOD){    
                            //天数    
                var num='';
               var starttime= DateStr.substring(0,10);
               var day= DateStr.substring(11,19);
               var d= starttime.split('-');
               if(day != null){
                       var t= day.split(':');
                       d[1]=d[1]-1; //月份减一   
                       var d= new Date(d[0],d[1],d[2],t[0],t[1],t[2]); 
               }else{
                       d[1]=d[1]-1; //月份减一   
                       var d= new Date(d[0],d[1],d[2]);
               }
               d.setDate(d.getDate()+num);
               return d;  
            } 

3.倒计时

            function dateFormat(endtime) {
                var str = "";
                var leftTime =time1.getTime() -new Date().getTime();
                 //alert(leftTime)
             if (leftTime>=0) {  
                 str+=Math.floor(leftTime/1000/60/60/24)+"天";  
                str+=Math.floor(leftTime/1000/60/60%24)+"时";  
                 str+=Math.floor(leftTime/1000/60%60)+"分";  
                str+=Math.floor(leftTime/1000%60)+"秒";                     
             } else{
             _str=""
             }
                return str
            }

4.加定时器

                setInterval( function(){
                         var time=dateFormat(time);
                     //设置到元素上面
                              $(#id).val(time);
                }, 1000);

 5.案例

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Title</title>
 6     <style>
 7         table td {
 8             font-size: 12px;
 9              200px;
10             height: 30px;
11             text-align: center;
12             background-color: #4f891e;
13             color: #ffffff;
14         }
15     </style>
16 </head>
17 <body>
18 
19 <script>
20     window.onload = function () {
21         var mm =strToDate('2020-08-12');
22         var nn =strToDate('2020-09-13');
23         var dd=nn-mm;
24         var cc=Math.floor(dd/1000/60/60/24)
25         alert(cc);
26     };
27     
28  function strToDate(strDate){
29     var date = eval('new Date(' + strDate.replace(/d+(?=-[^-]+$)/, 
30    function (a) { return parseInt(a, 10) - 1; }).match(/d+/g) + ')');
31   return date;
32  }
33 </script>
34 </body>
35 </html>
View Code
原文地址:https://www.cnblogs.com/2070393244com/p/12800162.html