js实现精确到秒的倒计时效果_javascript技巧

本文实例为大家分享了两种倒计时效果,供大家参考,具体内容如下

效果图:

1.倒计时效果 

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8"/>
  <title>倒计时</title>
  <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8"/>
  <style type="text/css">
  *{ margin:0; padding:0;}
  .dtime{ margin:10px;}
  .dtime span{ color:#C30;}
  </style>  

 </head>
 <body>
   <div class="dtime" id="a1"></div>
  <div class="dtime" id="a2"></div>
  <div class="dtime" id="a3"></div>
  <div class="dtime" id="a4"></div>
  <div class="dtime" id="a5"></div>
 </body>
 <script>
 function tbdTimeCountdown(args){//倒计时函数
  var ele=document.getElementById(args.id);
  var alltime=args.alltime;
  var arr=[];

  var t=Math.floor(alltime/(24*60*60));
  var yt=alltime%(24*60*60);

  var s=Math.floor(yt/(60*60));
  var ys=yt%(60*60);

  var f=Math.floor(ys/(60));
  var yf=ys%(60);

  var m=yf;

  arr[0]=[t,"天"];
  arr[1]=[s,"小时"];
  arr[2]=[f,"分"];
  arr[3]=[m,"秒结束"];

  var s=ce(arr,0);

  ele.innerHTML=s;

  var dong;

  dong=setInterval(function(){
   alltime-=1;
   if(alltime<=0){
    clearInterval(dong);
    ele.innerHTML="<span>0</span>秒";
    args.end();
   }else{
    t=Math.floor(alltime/(24*60*60));
    yt=alltime%(24*60*60);

    s=Math.floor(yt/(60*60));
    ys=yt%(60*60);

    f=Math.floor(ys/(60));
    yf=ys%(60);

    m=yf;

    arr[0]=[t,"天"];
    arr[1]=[s,"小时"];
    arr[2]=[f,"分"];
    arr[3]=[m,"秒结束"];

    var s=ce(arr,0);

    ele.innerHTML=s;
   };
  },1000);

  function ce(arr,sta){
   var i=sta;
   if(i<arr.length){
    if(arr[i][0]!=0){
     var s="";
     for(var j=i;j<arr.length;j++){
      s+="<span>"+arr[j][0]+"</span>"+arr[j][1];
     };
     return s;
    }else{
     return ce(arr,i+1);
    };
   };
  };
 };//倒计时end
 //效果1
 //86402 3602 62
 tbdTimeCountdown({id:"a1",//含有倒计时容器
  alltime:3,//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
   //alert("倒计时结束才会执行!");
  },

 });
 //效果2
 tbdTimeCountdown({id:"a2",//含有倒计时容器
  alltime:62,//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 //效果3
 tbdTimeCountdown({id:"a3",//含有倒计时容器
  alltime:3602,//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 //效果4
 tbdTimeCountdown({id:"a4",//含有倒计时容器
  alltime:86402,//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 //效果4
 tbdTimeCountdown({id:"a5",//含有倒计时容器
  alltime:154789,//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 </script>
</html>

2.倒计时2.html

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8"/>
  <title>倒计时</title>
  <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8"/>
  <style type="text/css">
  *{ margin:0; padding:0;}
  .dtime{ margin:10px;}
  .dtime span{ color:#C30;}
  </style>  

 </head>
 <body>
  <div class="dtime" id="a1" alltime="3"></div>
  <div class="dtime" id="a2" alltime="62"></div>
  <div class="dtime" id="a3" alltime="3605"></div>
  <div class="dtime" id="a4" alltime="48605"></div>
  <div class="dtime" id="a5" alltime="123456"></div>
 </body>
 <script>
 function tbdTimeCountdown(args){//倒计时函数
  var ele=document.getElementById(args.id);
  var alltime=Number(ele.getAttribute(args.alltime));
  var arr=[];

  var t=Math.floor(alltime/(24*60*60));
  var yt=alltime%(24*60*60);

  var s=Math.floor(yt/(60*60));
  var ys=yt%(60*60);

  var f=Math.floor(ys/(60));
  var yf=ys%(60);

  var m=yf;

  arr[0]=[t,"天"];
  arr[1]=[s,"小时"];
  arr[2]=[f,"分"];
  arr[3]=[m,"秒结束"];

  var s=ce(arr,0);

  ele.innerHTML=s;

  var dong;

  dong=setInterval(function(){
   alltime-=1;
   ele.setAttribute(args.alltime,alltime);
   if(alltime<=0){
    clearInterval(dong);
    ele.innerHTML="<span>0</span>秒";
    args.end();
   }else{
    t=Math.floor(alltime/(24*60*60));
    yt=alltime%(24*60*60);

    s=Math.floor(yt/(60*60));
    ys=yt%(60*60);

    f=Math.floor(ys/(60));
    yf=ys%(60);

    m=yf;

    arr[0]=[t,"天"];
    arr[1]=[s,"小时"];
    arr[2]=[f,"分"];
    arr[3]=[m,"秒结束"];

    var s=ce(arr,0);

    ele.innerHTML=s;
   };
  },1000);

  function ce(arr,sta){
   var i=sta;
   if(i<arr.length){
    if(arr[i][0]!=0){
     var s="";
     for(var j=i;j<arr.length;j++){
      s+="<span>"+arr[j][0]+"</span>"+arr[j][1];
     };
     return s;
    }else{
     return ce(arr,i+1);
    };
   };
  };
 };//倒计时end
 //效果1
 //86402 3602 62
 tbdTimeCountdown({id:"a1",//含有倒计时容器
  alltime:"alltime",//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
   alert("倒计时结束才会执行!");
  },

 });
 //效果2
 tbdTimeCountdown({id:"a2",//含有倒计时容器
  alltime:"alltime",//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 //效果3
 tbdTimeCountdown({id:"a3",//含有倒计时容器
  alltime:"alltime",//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 //效果4
 tbdTimeCountdown({id:"a4",//含有倒计时容器
  alltime:"alltime",//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 //效果4
 tbdTimeCountdown({id:"a5",//含有倒计时容器
  alltime:"alltime",//倒计时总秒数
  end:function(){//倒计时结束,时间为0是调用的函数
  },

 });
 </script>
</html>

大家可以参考专题 《js倒计时功能汇总》 进行深入学习。

以上就是本文的全部内容,希望对大家学习JavaScript程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索js
倒计时
javascript实现倒计时、tmw倒计时精确到毫秒、js倒计时精确到毫秒、jq倒计时精确到毫秒、倒计时精确到毫秒,以便于您获取更多的相关知识。

时间: 2024-12-24 21:30:00

js实现精确到秒的倒计时效果_javascript技巧的相关文章

js实现精确到毫秒的倒计时效果_javascript技巧

本文实例为大家分享了精确到毫秒的倒计时效果,供大家参考,具体内容如下 <!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">

js实现点击获取验证码倒计时效果_javascript技巧

网站中为了防止恶意获取验证短信.验证邮箱,都会在点击获取验证码的按钮上做个倒计时的效果.实现这个功能,一个setInterval和一个clearInterval就能搞定了,不需要太多的代码.实例效果和代码如下: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <input type="button" style="height:

JS实现的仿淘宝交易倒计时效果_javascript技巧

本文实例讲述了JS实现的仿淘宝交易倒计时效果.分享给大家供大家参考,具体如下: <script type="text/javascript"> var StartTime = new Date("2015/11/11 12:34:03"); document.write("订购时间: " + StartTime.toLocaleDateString() + StartTime.toLocaleTimeString() + "

JS/jQ实现免费获取手机验证码倒计时效果_javascript技巧

最近做了一个项目,其中有项目需求涉及到手机号验证码,就是当用户点击获取验证码之后我们会发送一条信息到用户手机,然后就会出现一个倒计时按钮,很像支付宝手机付款效果了,下面我给大家分享两个实现代码. 如何获取手机验证码? 小月不知道大家是利用什么平台去获取验证码的,但是告诉大家我是在哪个平台获取的. LeanCloud :https://leancloud.cn/ 文档:https://leancloud.cn/docs/sms_guide-js.html 在这个平台首先去要注册一个账号,在设置里面

js实现新年倒计时效果_javascript技巧

一年又一年,新年又快到了,最近大家又开始抢回家过年的车票了,我们就来算一算离新年还有多少天,总结总结在即将过去的2015年大家都收获了什么? 本文实例讲述了js实现新年倒计时效果代码.分享给大家供大家参考.具体如下: 运行效果图: 具体代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional

JS+CSS3制作炫酷的弹窗效果_javascript技巧

昨天在家看电视时,退出的时候发现了一个弹窗效果,整个背景模糊,觉得这样的效果好炫,要比纯色加透明度高大上好多,连续试了几个界面,最终确定效果由css实现的,于是今天一大早来到公司便赶紧搜索了一下,虽然兼容性奇差,但是一个css属性就可以搞定.瞬间感觉自己知道的真是太少了~~        首先回忆一下弹窗的实现,一般我们分为两层,弹出窗口层(popus)和遮罩层(mask),通常情况下我习惯就这两元素全部设成fixed定位,具体和absolute区别一试便知.对于mask层自不用多少,我们如下给

js实现的彩色方块飞舞奇幻效果_javascript技巧

本文实例讲述了js实现的彩色方块飞舞奇幻效果.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: <!DOCTYPE html> <html> <head> <title>demo</title> <style type="text/css"> body { margin:0; padding:0; } ul { list-style:none; margin:0; padding:0; } li

js实现可折叠展开的手风琴菜单效果_javascript技巧

本文实例讲述了js实现可折叠展开的手风琴菜单效果.分享给大家供大家参考.具体如下: 这是一款可折叠展开的菜单,手风琴菜单,运用CSS与JavaScript技术实现的合拢与伸展的网页菜单,代码简洁,来自老外的代码作品,希望大家喜欢. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-hidden-show-sfq-style-menu-codes/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XH

移动端H5开发 Turn.js实现很棒的翻书效果_javascript技巧

最近CTO给我分配了一个移动端H5开发的任务,主要功能是需要实现翻书效果,我听过主要需求后,当时是呀!!!接下来自己尝试使用 fullPage.js和Swiper来实现翻书效果,结果效果都不是非常的理想,后来想起自己曾经做过PC版的翻书效果,当时使用的是Turn.js ,查过其相关API后,整个人突然豁然开朗呀,使用Turn.js 完全可以解决当前我接手这个项目的所有需求呀.现在将个人的学习总结如下,若有不正确的地方,欢迎读者给与批评指正! Turn.js的官方网址: http://www.tu