用javascript实现倒计时效果


Posted in Javascript onFebruary 09, 2021

用Javascript实现倒计时效果,供大家参考,具体内容如下

正在学习大前端中,有代码和思路不规范不正确的地方往多多包涵,感谢指教

在某些商城网站中,我们常常可以看见其网站或者app上有一个区域放的是倒计时,来用来提醒用户还有多少时间将会发生什么事情,下面我们用代码来对其进行实现

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <style>
 div {
  margin: 300px;
  border: 1px solid pink;
 }

 span {
  display: inline-block;
  width: 40px;
  height: 40px;
  background-color: blue;
  font-size: 20px;
  color: #fff;
  text-align: center;
  line-height: 40px;
 }
 </style>
</head>
<body>
<div>
 <span class="hour">1</span>
 <span class="minute">2</span>
 <span class="second">3</span>
</div>
<script>
 var hours=document.querySelector('.hour')
 var min=document.querySelector('.minute')
 var sce=document.querySelector('.second')
 var inputTime=+new Date('2021-2-8 16:40:00')
 //countDown()//先1调用,防止第一次刷新有空白
 //开启定时器,这是等了1000ms后才开启的定时器
 setInterval(countDown,1)
 function countDown() {
 var nowTime = +new Date(); // 返回的是当前时间总的毫秒数
 var times = (inputTime - nowTime) / 1000; // times是剩余时间总的秒数
 var h = parseInt(times / 60 / 60 % 24); //时
 h = h < 10 ? '0' + h : h;
 hours.innerHTML = h; // 把剩余的小时给 小时黑色盒子
 var m = parseInt(times / 60 % 60); // 分
 m = m < 10 ? '0' + m : m;
 min.innerHTML = m;
 var s = parseInt(times % 60); // 当前的秒
 s = s < 10 ? '0' + s : s;
 sce.innerHTML = s;
 }
</script>
</body>
</html>

演示效果:

用javascript实现倒计时效果

时间一秒一秒得倒计时

代码解释:

这里我把三个行内元素span放在了块元素div里面,由于行内元素不能改宽高,所以都换成行内块元素。

这里因为倒计时要修改的地方是三个span盒子,分别对应这小时,分钟,秒数所以获取这三个span的事件。然后用inputTime这个变量来接收我们的目的时间。

然后创建一个countDown为名字的函数。函数里面用nowTime这个变量来接收当前的时间。因为接收到的时间是以毫秒为单位,所以用一个变量times来接收目的时间和现在时间的时间差,然后再除以1000,因为1s=1000ms,这里就得到了剩余的秒数。

用h表示剩余的小时一天=24小时,一个小时=60分钟,1分钟=60s。所以这里用总的秒数/60/60%24就得到了剩余的小时数。然后为了让样式更好看,我们把显示小数设置为两位,这里用的是三元运算符:小时小于10?如果小于就在前面+‘0';如果大于10就只返回数字。并用h来进行接收,然后把h给hours这个盒子。下面的分钟和秒数都是一样的原理。
然后函数写好了,我们再用定时器来调用这个函数,间隔时间为1/1000ms。

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

Javascript 相关文章推荐
CLASS_CONFUSION JS混淆 全源码
Dec 12 Javascript
jQuery 图像裁剪插件Jcrop的简单使用
May 22 Javascript
jquery实现鼠标拖动图片效果示例代码
Jan 09 Javascript
包含中国城市的javascript对象实例
Aug 03 Javascript
js表单验证实例讲解
Mar 31 Javascript
浅析JS操作DOM的一些常用方法
May 13 Javascript
JavaScript 拖拽实例代码
Sep 21 Javascript
vue-router项目实战总结篇
Feb 11 Javascript
JavaScript实现单英文金山打字通
Jul 24 Javascript
JS页面获取 session 值,作用域和闭包学习笔记
Oct 16 Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
Dec 25 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
Sep 21 Javascript
javascript实现倒计时关闭广告
Feb 09 #Javascript
javascript实现固定侧边栏
Feb 09 #Javascript
JavaScript实现前端倒计时效果
Feb 09 #Javascript
Vue+Bootstrap实现简易学生管理系统
Feb 09 #Vue.js
JavaScript 获取滚动条位置并将页面滑动到锚点
Feb 08 #Javascript
详解Vue的七种传值方式
Feb 08 #Vue.js
Handtrack.js库实现实时监测手部运动(推荐)
Feb 08 #Javascript
You might like
咖啡机如何保养和日常清洁?
2021/03/03 冲泡冲煮
PHP中显示格式化的用户输入
2006/10/09 PHP
PHP配置心得包含MYSQL5乱码解决
2006/11/20 PHP
php 图片上传类代码
2009/07/17 PHP
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
2011/05/04 PHP
5种PHP创建数组的实例代码分享
2014/01/17 PHP
使用PHP进行微信公众平台开发的示例
2015/08/21 PHP
简单谈谈PHP中的include、include_once、require以及require_once语句
2016/04/23 PHP
Yii2中cookie用法示例分析
2016/07/18 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
日期 时间js控件
2009/05/07 Javascript
Aptana调试javascript图解教程
2009/11/30 Javascript
js获取元素的外链样式的简单实现方法
2016/06/06 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
Ajax和Comet技术总结
2017/02/19 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
深入理解JavaScript 中的执行上下文和执行栈
2018/10/23 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
layui扩展上传组件模拟进度条的方法
2019/09/23 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
2020/07/13 Javascript
Vue select 绑定动态变量的实例讲解
2020/10/22 Javascript
复制粘贴功能的Python程序
2008/04/04 Python
在Python中操作时间之tzset()方法的使用教程
2015/05/22 Python
Python数据结构之翻转链表
2017/02/25 Python
PyQt5每天必学之组合框
2018/04/20 Python
使用 Python 实现文件递归遍历的三种方式
2018/07/18 Python
详解python之heapq模块及排序操作
2019/04/04 Python
利用Python模拟登录pastebin.com的实现方法
2019/07/12 Python
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
市政施工员自我鉴定
2014/01/15 职场文书
消防工作实施方案
2014/06/09 职场文书
停课通知书
2015/04/24 职场文书
六年级作文之预言作文
2019/10/25 职场文书
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
2021/10/05 Javascript
使用 Apache 反向代理的设置技巧
2022/01/18 Servers
一文了解Java动态代理的原理及实现
2022/07/07 Java/Android