基于Javascript实现倒计时功能


Posted in Javascript onFebruary 22, 2016

本文实例实现一个倒计时功能. 倒计时功能, 用在项目的发布时间, 或者某个活动做倒计时等等的突出时间功能的方面.
界面代码结构,先要完成好. 这个界面我就不做那么美观了,凑合就行(O(∩_∩)O哈哈~).

基于Javascript实现倒计时功能

代码名称

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>倒计时实现</title>
  <style>
    ul, li {
      margin: 0;
      padding: 0;
      list-style: none;
    }
    #countdown {
      font-size: 50px;;
      width: 350px;
      margin: 0 auto;
      background-image: none;
      color: #fff;
      padding: 100px;
      font-weight: bolder;
    }
    #countdown ul {
      display: flex;
      align-items: flex-start;
      justify-content: center;
    }
    #countdown ul li{
      display: inline-block;
      margin-left: 10px;
    }
    #countdown ul li:last-child {
      margin-right: 10px;
    }

    #countdown ul li strong {
      text-shadow: 5px 5px 5px #000;
    }
    #countdown ul li strong, #countdown ul li span {
      display: block;
      text-align: center;
    }
    #sec {
      color: #ff0000;
      text-shadow: 5px 5px 2px #ff0000;
    }
  </style>
</head>
<body>
  <div id="countdown">
    <ul>
      <li>
        <strong id="day">00</strong>
        <span>天</span>
      </li>
      <li>:</li>
      <li>
        <strong id="hour">00</strong>
        <span>时</span>
      </li>
      <li>:</li>
      <li>
        <strong id="min">00</strong>
        <span>分</span>
      </li>
      <li>:</li>
      <li>
        <strong id="sec">00</strong>
        <span>秒</span>
      </li>
    </ul>
  </div>
</body>
</html>

下面做Javascript的讲解了.

首先设定一个结束时间,时间通过new Date()来进行创建. 这样才能够计算倒计时的时间.

//结束时间
var t_endtime = new Date("2016-05-22 00:00:00");

然后就是换算规则,规则的换算是常理了.

// 时间换算规则
var t_day = 60 * 60 * 24;
var t_hour = 60 * 60;
var t_min = 60;

再次就是通过setInterval来计算当前时间的对比, 因为时间在一秒一秒的过去, 当前时间的获取就在setInterval中进行计算. 当然还得将计算出的结果显示到界面上.

var ele_day = document.getElementById("day");
var ele_hour = document.getElementById("hour");
var ele_min = document.getElementById("min");
var ele_sec = document.getElementById("sec");

setInterval(function () {
  //获取当前时间
  var t_currenttime = new Date();
  //结束时间 - 当前时间 = 剩余时间
  var t_result = t_endtime.getTime() - t_currenttime.getTime();

  //剩余时间换算
  var t_time = Math.floor( t_result / 1000 );
  var t_result_day = Math.floor( t_time / t_day );
  var t_result_hour = Math.floor( t_time % t_day / t_hour);
  var t_result_min = Math.floor(t_time % t_day % t_hour/ t_min);
  var t_result_sec = Math.floor( t_time % t_day % t_hour % t_min);

  // 将时间小于10的,在值前面加入0;
  if ( t_result_day < 10) {
    t_result_day = "0" + t_result_day;
  }

  if ( t_result_hour < 10) {
    t_result_hour = "0" + t_result_hour;
  }

  if ( t_result_min < 10) {
    t_result_min = "0" + t_result_min;
  }

  if ( t_result_sec < 10) {
    t_result_sec = "0" + t_result_sec;
  }

  //显示到页面上
  ele_day.textContent = t_result_day;
  ele_hour.textContent = t_result_hour;
  ele_min.textContent = t_result_min;
  ele_sec.textContent = t_result_sec;

}, 1000);

很简单, 一个倒计时功能就完成了.

基于Javascript实现倒计时功能

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

Javascript 相关文章推荐
jQuery ReferenceError: $ is not defined 错误的处理办法
May 10 Javascript
javascript 对象数组根据对象object key的值排序
Mar 09 Javascript
js实现透明度渐变效果的方法
Apr 10 Javascript
jQuery移动页面开发中的触摸事件与虚拟鼠标事件简介
Dec 03 Javascript
jQuery实现按钮点击遮罩加载及处理完后恢复的效果
Jun 07 Javascript
jQuery插件zTree实现的多选树效果示例
Mar 08 Javascript
JS实现的点击表头排序功能示例
Mar 27 Javascript
vue2.0结合Element实现select动态控制input禁用实例
May 12 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
Jul 24 Javascript
JavaScript使用小插件实现倒计时的方法讲解
Mar 11 Javascript
关于AOP在JS中的实现与应用详解
May 06 Javascript
浅谈vue2的$refs在vue3组合式API中的替代方法
Apr 18 Vue.js
TypeOf这些知识点你了解吗
Feb 21 #Javascript
详谈javascript异步编程
Feb 21 #Javascript
浅谈javascript的call()、apply()、bind()的用法
Feb 21 #Javascript
EasyUI闪屏EasyUI页面加载提示(原理+代码+效果图)
Feb 21 #Javascript
javascript+HTML5自定义元素播放焦点图动画
Feb 21 #Javascript
JavaScript编程学习技巧汇总
Feb 21 #Javascript
Node.js开发者必须了解的4个JS要点
Feb 21 #Javascript
You might like
用PHP将网址字符串转换成超链接(网址或email)
2010/05/25 PHP
使用PHPMyAdmin修复论坛数据库的图文方法
2012/01/09 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
php目录遍历函数opendir用法实例
2014/11/20 PHP
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
2016/02/22 PHP
PHP底层运行机制与工作原理详解
2020/07/31 PHP
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
一个关于javascript匿名函数的问题分析
2012/03/30 Javascript
用js实现输入提示(自动完成)的实例代码
2013/06/14 Javascript
javascript获取select的当前值示例代码(兼容IE/Firefox/Opera/Chrome)
2013/12/17 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
vue快捷键与基础指令详解
2017/06/01 Javascript
JS实现微信里判断页面是否被分享成功的方法
2017/06/06 Javascript
Javascript实现跨域后台设置拦截的方法详解
2017/08/04 Javascript
jQuery ajax读取本地json文件的实例
2017/10/31 jQuery
javascript用rem来做响应式开发
2018/01/13 Javascript
Node.JS段点续传:Nginx配置文件分段下载功能的实现方法
2018/03/12 Javascript
微信小程序rich-text富文本用法实例分析
2019/05/20 Javascript
vue点击自增和求和的实例代码
2019/11/06 Javascript
Vue项目打包压缩的实现(让页面更快响应)
2020/03/10 Javascript
jQuery实现移动端笔触canvas电子签名
2020/05/21 jQuery
Python随机生成信用卡卡号的实现方法
2015/05/14 Python
Python切换pip安装源的方法详解
2016/11/18 Python
python 按照固定长度分割字符串的方法小结
2018/04/30 Python
Django 中自定义 Admin 样式与功能的实现方法
2019/07/04 Python
python构造函数init实例方法解析
2020/01/19 Python
在Tensorflow中实现梯度下降法更新参数值
2020/01/23 Python
python爬虫 requests-html的使用
2020/11/30 Python
借助HTML5 Canvas来绘制三角形和矩形等多边形的方法
2016/03/14 HTML / CSS
大专生自我评价
2014/01/28 职场文书
高一化学教学反思
2014/02/05 职场文书
家长对老师的感言
2014/03/11 职场文书
党委书记个人对照检查材料
2014/09/15 职场文书
天下第一关导游词
2015/02/06 职场文书
公司车辆维修管理制度
2015/08/05 职场文书
嵌入式Redis服务器在Spring Boot测试中的使用教程
2021/07/21 Redis