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


Posted in Javascript onAugust 05, 2016

本文实例为大家分享了精确到毫秒的倒计时效果,供大家参考,具体内容如下

<!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>毫秒的倒计时</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时间戳,得到倒计时
  function changeTimeStamp(timeStamp){
   var distancetime = new Date(timeStamp*1000).getTime() - new Date().getTime();
   if(distancetime > 0){ 






//如果大于0.说明尚未到达截止时间  
   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{







//若否,就是已经到截止时间了
   return "已截止!"
   } 
  }  
  }();
  
  addTimer("timer1",1451923200);//1月5日00点,unix时间戳自己去百度一下,就有的
  addTimer("timer2",1451926800);//1月5日01点
  addTimer("timer3",1451930400);//1月5日02点
  addTimer("timer4",1452020400);//1月6日03点

 </script>
 
 </body>

</html>

更多关于倒计时的文章请查看专题:《倒计时功能》

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery多选项卡效果实例代码(附效果图)
Mar 23 Javascript
jQuery学习笔记之总体架构
Jun 03 Javascript
很全面的JavaScript常用功能汇总集合
Jan 22 Javascript
图解prototype、proto和constructor的三角关系
Jul 31 Javascript
正则表达式替换html元素属性的方法
Nov 26 Javascript
JS绘制微信小程序画布时钟
Dec 24 Javascript
vue-router:嵌套路由的使用方法
Feb 21 Javascript
为JQuery EasyUI 表单组件增加焦点切换功能的方法
Apr 13 jQuery
JS检测是否可以访问公网服务器功能代码
Jun 19 Javascript
JS 60秒后重新发送验证码的实例讲解
Jul 26 Javascript
vue组件文档(.md)中如何自动导入示例(.vue)详解
Jan 25 Javascript
layui问题之模拟table表格中的选中按钮选中事件的方法
Sep 20 Javascript
jQuery实现Select左右复制移动内容
Aug 05 #Javascript
jQuery插件EasyUI实现Layout框架页面中弹出窗体到最顶层效果(穿越iframe)
Aug 05 #Javascript
jQuery插件EasyUI设置datagrid的checkbox为禁用状态的方法
Aug 05 #Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
Aug 05 #Javascript
Angular外部使用js调用Angular控制器中的函数方法或变量用法示例
Aug 05 #Javascript
使用HTML5+Boostrap打造简单的音乐播放器
Aug 05 #Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
Aug 05 #Javascript
You might like
一个用于MySQL的PHP XML类
2006/10/09 PHP
PHP中对用户身份认证实现两种方法
2011/06/04 PHP
Yii2 批量插入、更新数据实例
2017/03/15 PHP
PHP编程计算文件或数组中单词出现频率的方法
2017/05/22 PHP
基于 Swoole 的微信扫码登录功能实现代码
2018/01/15 PHP
PHP+ajax实现获取新闻数据简单示例
2018/05/08 PHP
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
jquery怎样实现ajax联动框(二)
2013/03/08 Javascript
JSON辅助格式化处理方法
2013/03/26 Javascript
JavaScript中的noscript元素属性位置及作用介绍
2013/04/11 Javascript
JavaScript 七大技巧(二)
2015/12/13 Javascript
Vue实现virtual-dom的原理简析
2017/07/10 Javascript
纯js实现图片匀速淡入淡出效果
2017/08/22 Javascript
利用JS实现scroll自定义滚动效果详解
2017/10/17 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
Javascript网页抢红包外挂实现分享
2018/01/11 Javascript
nodejs提示:cross-device link not permitted, rename错误的解决方法
2019/06/10 NodeJs
[03:48]大碗DOTA
2019/07/25 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
Python入门篇之编程习惯与特点
2014/10/17 Python
Python中类型关系和继承关系实例详解
2015/05/25 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
2018/06/22 Python
python与C、C++混编的四种方式(小结)
2019/07/15 Python
python求绝对值的三种方法小结
2019/12/04 Python
基于python实现计算且附带进度条代码实例
2020/03/31 Python
Python虚拟环境的创建和包下载过程分析
2020/06/19 Python
施华洛世奇德国官网:SWAROVSKI德国
2017/02/01 全球购物
国际政治个人自荐信范文
2013/11/26 职场文书
路政管理专业个人自荐信范文
2013/11/30 职场文书
会计电算化大学生职业规划书
2014/02/05 职场文书
毕业生代领毕业材料的授权委托书
2014/09/29 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
小学运动会开幕词
2015/01/28 职场文书
婚前协议书怎么写,才具有法律效力呢 ?
2019/06/28 职场文书
Redis缓存-序列化对象存储乱码问题的解决
2021/06/21 Redis
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
2022/06/21 Golang