原生JS实现简单的倒计时功能示例


Posted in Javascript onAugust 30, 2018

本文实例讲述了原生JS实现简单的倒计时功能。分享给大家供大家参考,具体如下:

1、第一种

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>3water.com JS倒计时</title>
</head>
<body>
<div id="div"></div>
<script type="text/javascript">
window.onload=clock;
function clock(){
var today=new Date(),//当前时间
    h=today.getHours(),
    m=today.getMinutes(),
    s=today.getSeconds();
  var stopTime=new Date("Feb 9 2019 00:00:00"),//结束时间
    stopH=stopTime.getHours(),
    stopM=stopTime.getMinutes(),
    stopS=stopTime.getSeconds();
  var shenyu=stopTime.getTime()-today.getTime(),//倒计时毫秒数
    shengyuD=parseInt(shenyu/(60*60*24*1000)),//转换为天
    D=parseInt(shenyu)-parseInt(shengyuD*60*60*24*1000),//除去天的毫秒数
    shengyuH=parseInt(D/(60*60*1000)),//除去天的毫秒数转换成小时
    H=D-shengyuH*60*60*1000,//除去天、小时的毫秒数
    shengyuM=parseInt(H/(60*1000)),//除去天的毫秒数转换成分钟
    M=H-shengyuM*60*1000;//除去天、小时、分的毫秒数
    S=parseInt((shenyu-shengyuD*60*60*24*1000-shengyuH*60*60*1000-shengyuM*60*1000)/1000)//除去天、小时、分的毫秒数转化为秒
    document.getElementById("div").innerHTML=(shengyuD+"天"+shengyuH+"小时"+shengyuM+"分"+S+"秒"+"<br>");
    // setTimeout("clock()",500);
    setTimeout(clock,500);
}
</script>
</body>
</html>

运行效果:

原生JS实现简单的倒计时功能示例

2、第二种

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3water.com js倒计时</title>
  <style>
    *{
      margin: 0;
      padding:0;
    }
    p {
      font-size: 80px;
      text-align: center;
    }
    p span {
      color: red;
    }
    p span.time {
      color: black
    }
    body{padding-top:200px;}
  </style>
</head>
<body>
<p>距离2019年还有</p>
<p><span></span></p>
<script>
  var oSpan = document.getElementsByTagName('span')[0];
  function tow(n) {
    return n >= 0 && n < 10 ? '0' + n : '' + n;
  }
  function getDate() {
    var oDate = new Date();//获取日期对象
    var oldTime = oDate.getTime();//现在距离1970年的毫秒数
    var newDate = new Date('2019/1/1 00:00:00');
    var newTime = newDate.getTime();//2019年距离1970年的毫秒数
    var second = Math.floor((newTime - oldTime) / 1000);//未来时间距离现在的秒数
    var day = Math.floor(second / 86400);//整数部分代表的是天;一天有24*60*60=86400秒 ;
    second = second % 86400;//余数代表剩下的秒数;
    var hour = Math.floor(second / 3600);//整数部分代表小时;
    second %= 3600; //余数代表 剩下的秒数;
    var minute = Math.floor(second / 60);
    second %= 60;
    var str = tow(day) + '<span class="time">天</span>'
        + tow(hour) + '<span class="time">小时</span>'
        + tow(minute) + '<span class="time">分钟</span>'
        + tow(second) + '<span class="time">秒</span>';
    oSpan.innerHTML = str;
  }
  getDate();
  setInterval(getDate, 1000);
</script>
</body>
</html>

运行效果:

原生JS实现简单的倒计时功能示例

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,即可得到上述运行结果。

Javascript 相关文章推荐
JQuery.Ajax之错误调试帮助信息介绍
Jul 04 Javascript
javascript操作html控件实例(javascript添加html)
Dec 02 Javascript
JavaScript获得当前网页来源页面(即上一页)的方法
Apr 03 Javascript
详解javascript函数的参数
Nov 10 Javascript
分享javascript计算时间差的示例代码
Mar 19 Javascript
AngularJs bootstrap搭载前台框架——js控制部分
Sep 01 Javascript
AngularJS删除路由中的#符号的方法
Sep 20 Javascript
bootstrap-datetimepicker实现只显示到日期的方法
Nov 25 Javascript
Vue开发中整合axios的文件整理
Apr 29 Javascript
详解react-native-fs插件的使用以及遇到的坑
Sep 12 Javascript
后台使用freeMarker和前端使用vue的方法及遇到的问题
Jun 13 Javascript
JavaScript使用表单元素验证表单的示例代码
Aug 20 Javascript
JavaScript fetch接口案例解析
Aug 30 #Javascript
vue组件表单数据回显验证及提交的实例代码
Aug 30 #Javascript
原生JS实现的简单小钟表功能示例
Aug 30 #Javascript
使用Node搭建reactSSR服务端渲染架构
Aug 30 #Javascript
webpack4+Vue搭建自己的Vue-cli项目过程分享
Aug 29 #Javascript
JS实现的input选择图片本地预览功能示例
Aug 29 #Javascript
简述vue状态管理模式之vuex
Aug 29 #Javascript
You might like
ThinkPHP令牌验证实例
2014/06/18 PHP
destoon实现商铺管理主页设置增加新菜单的方法
2014/06/26 PHP
PHP简单实现数字分页功能示例
2016/08/24 PHP
jQuery 性能优化指南(2)
2009/05/21 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
2015/11/17 Javascript
如何使用AngularJs打造权限管理系统【简易型】
2016/05/09 Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
2017/03/27 jQuery
详解angularJS自定义指令间的相互交互
2017/07/05 Javascript
react开发教程之React 组件之间的通信方式
2017/08/12 Javascript
Vue2.0用 watch 观察 prop 变化(不触发)
2017/09/08 Javascript
vue如何判断dom的class
2018/04/26 Javascript
微信小程序视图控件与bindtap之间的问题的解决
2019/04/08 Javascript
JQuery常见节点操作实例分析
2019/05/15 jQuery
微信小程序页面渲染实现方法
2019/11/06 Javascript
解决vue侦听器watch,调用this时出现undefined的问题
2020/10/30 Javascript
使用Pyrex来扩展和加速Python程序的教程
2015/04/13 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/27 Python
tensorflow实现加载mnist数据集
2018/09/08 Python
利用anaconda保证64位和32位的python共存
2021/03/09 Python
pytorch载入预训练模型后,实现训练指定层
2020/01/06 Python
Html5画布_动力节点Java学院整理
2017/07/13 HTML / CSS
关于前端上传文件全面基础扫盲贴(入门)
2019/08/01 HTML / CSS
利用HTML5画出一个坦克的形状具体实现代码
2013/06/20 HTML / CSS
中国海淘族值得信赖的海淘返利网站:55海淘
2017/01/16 全球购物
奢华时尚的创新平台:Baltini
2020/10/03 全球购物
JAVA中运算符的分类及举例
2015/09/12 面试题
毕业生的求职信范文分享
2013/12/04 职场文书
集体婚礼证婚词
2014/01/13 职场文书
《童年的发现》教学反思
2014/02/14 职场文书
2014年大学生党课心得体会范文
2014/03/29 职场文书
艾滋病宣传标语
2014/06/25 职场文书
贷款委托书怎么写
2014/08/02 职场文书
2015秋季幼儿园开学寄语
2015/03/25 职场文书
资产移交协议书
2016/03/24 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
导游词之西递宏村
2019/12/10 职场文书