原生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 相关文章推荐
模拟用户操作Input元素,不会触发相应事件
May 11 Javascript
IE6/7/8/9不支持exec的简写方式
May 25 Javascript
jQuery操作 input type=checkbox的实现代码
Jun 14 Javascript
javascript小数四舍五入多种方法实现
Dec 23 Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
May 15 Javascript
在jquery boxy中添加百度地图坐标拾取注意流程
Apr 03 Javascript
jQuery validate插件功能与用法详解
Dec 15 Javascript
清除输入框内的空格
Dec 21 Javascript
深究AngularJS如何获取input的焦点(自定义指令)
Jun 12 Javascript
node.js的Express服务器基本使用教程
Jan 09 Javascript
vue 实现用户登录方式的切换功能
Apr 14 Javascript
jquery.validate自定义验证用法实例分析【成功提示与择要提示】
Jun 06 jQuery
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
解析func_num_args与func_get_args函数的使用
2013/06/24 PHP
php实现excel中rank函数功能的方法
2015/01/20 PHP
php实现只保留mysql中最新1000条记录
2015/06/18 PHP
PHP实现简单的模板引擎功能示例
2017/09/02 PHP
实例介绍PHP中zip_open()函数用法
2019/02/15 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
2019/10/14 PHP
laravel框架实现敏感词汇过滤功能示例
2020/02/15 PHP
js跨域和ajax 跨域问题的实现思路
2009/09/05 Javascript
javascript setTimeout和setInterval 的区别
2009/12/08 Javascript
javascript 获取url参数和script标签中获取url参数函数代码
2010/01/22 Javascript
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
js操作table示例(个人心得)
2013/11/29 Javascript
JQuery遍历json数组的3种方法
2014/11/08 Javascript
从零学习node.js之简易的网络爬虫(四)
2017/02/22 Javascript
简单实现js菜单栏切换效果
2017/03/04 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
JavaScript模拟实现封装的三种方式及写法区别
2017/10/27 Javascript
在小程序中使用腾讯视频插件播放教程视频的方法
2018/07/10 Javascript
小程序实现选择题选择效果
2018/11/04 Javascript
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
2020/07/27 Javascript
Vue $emit()不能触发父组件方法的原因及解决
2020/07/28 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
2020/08/14 Javascript
Python获取服务器信息的最简单实现方法
2015/03/05 Python
简述:我为什么选择Python而不是Matlab和R语言
2017/11/14 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
2019/08/23 Python
python使用opencv实现马赛克效果示例
2019/09/28 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
python的flask框架难学吗
2020/07/31 Python
python根据字典的键来删除元素的方法
2020/08/16 Python
详解Scrapy Redis入门实战
2020/11/18 Python
雪花秀美国官方网站:韩国著名草本护肤化妆品品牌
2016/10/19 全球购物
市场营销毕业生自荐信范文
2014/04/01 职场文书
毕业答辩开场白范文
2015/05/27 职场文书
特种设备安全管理制度
2015/08/06 职场文书
Go语言基础切片的创建及初始化示例详解
2021/11/17 Golang
使用refresh_token实现无感刷新页面
2022/04/26 Javascript