JavaScript实现前端网页版倒计时

使用原生JavaScript简单实现倒计时,供大家参考,具体内容如下

Posted in Javascript onMarch 24, 2021

效果

JavaScript实现前端网页版倒计时

代码

// An highlighted block
<!DOCTYPE html>
<html>
 
<head>
 <meta charset="utf-8">
 <title></title>
 
 <!-- css样式 -->
 <style type="text/css">
  * {
   margin: 0;
   padding: 0;
  }
 
  .onsell {
   height: 400px;
   width: 200px;
   border: 1px solid #F2F2F2;
   margin: 10px;
   box-shadow: 1px 2px 4px rgba(0, 0, 0, .2);
  }
 
  .box {
   /* display: none; */
   float: left;
   margin: 328px 34px 0;
  }
 
  .box div {
   position: relative;
   display: inline-block;
   width: 40px;
   height: 40px;
   background-color: #333;
   color: #fff;
   font-size: 20px;
   text-align: center;
   line-height: 40px;
   box-shadow: 1px 2px 4px rgba(0, 0, 0, .4);
  }
 </style>
 
</head>
 
<body>
 <!-- 要求:某商品在将来某一天进行促销一天,利用js制作倒计时效果: 时:分:秒 -->
 <div class="onsell">
  <div class="box">
   <div class="hour">00</div>
   <div class="minutes">00</div>
   <div class="seconds">00</div>
  </div>
 </div>
</body>
 
</html>
<script>
 window.onload = function () {
  let hour = document.querySelector('.hour')
  let minutes = document.querySelector('.minutes')
  let seconds = document.querySelector('.seconds')
 
  // 倒计时的时间戳 使用+将时间对象转为时间戳 等同于Date.now()
  let wantTime = +new Date('2021-3-17 18:00:00')
  countTime()
 
  let timer = setInterval(() => {
   countTime()
  }, 1000)
 
  function countTime() {
   let currentTime = +new Date()
   if (wantTime >= currentTime) {
    let times = (wantTime - currentTime) / 1000 // 总秒数 时间戳/1000 = 秒
    let remainDay = parseInt(times / 60 / 60 / 24) // 余数取整就是剩余的天数
    console.log(remainDay);
    if (remainDay === 0) {
     if(times < 1) {
     // 倒计时完毕
     // 这里触发操作
     }
     // 天数小于一天开始计时
     setTime(times)
    }
   } else {
    hour.innerHTML = '00'
    minutes.innerHTML = '00'
    seconds.innerHTML = '00'
   }
  }
 
 
  function setTime(time) {
 
   // 粗糙版
   let s = parseInt(time % 60)
   s = s < 10 ? '0' + s : s
   let m = parseInt(time / 60 % 60)
   m = m < 10 ? '0' + m : m
   let h = parseInt(time / 60 / 60 % 24)
   h = h < 10 ? '0' + h : h
   hour.innerHTML = h
   minutes.innerHTML = m
   seconds.innerHTML = s
 
  }
 
 }
</script>

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

Javascript 相关文章推荐
如何判断微信内置浏览器(通过User Agent实现)
Sep 01 Javascript
使用不同的方法结合/合并两个JS数组
Sep 18 Javascript
Angularjs制作简单的路由功能demo
Apr 14 Javascript
jq checkbox 的全选并ajax传参的实例
Apr 01 Javascript
通过V8源码看一个关于JS数组排序的诡异问题
Aug 14 Javascript
基于Cookie常用操作以及属性介绍
Sep 07 Javascript
微信小程序使用modal组件弹出对话框功能示例
Nov 29 Javascript
浅谈vue-router 路由传参的方法
Dec 27 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
Mar 05 Javascript
vue项目实现减少app.js和vender.js的体积操作
Nov 12 Javascript
JavaScript用document.write()输出换行的示例代码
Nov 26 Javascript
类和原型的设计模式之复制与委托差异
Jul 07 Javascript
vue路由实现登录拦截
vue项目实现分页效果
Mar 24 #Vue.js
jQuery treeview树形结构应用
Mar 24 #jQuery
js实现弹框效果
Mar 24 #Javascript
vue实现倒计时功能
Mar 24 #Vue.js
Ajax实现页面无刷新留言效果
利用promise及参数解构封装ajax请求的方法
You might like
中东人咖啡哲学
2021/03/03 咖啡文化
php三维数组去重(示例代码)
2013/11/26 PHP
php获取网站百度快照日期的方法
2015/07/29 PHP
PHP ADODB实现事务处理功能示例
2018/05/25 PHP
json 定义
2008/06/10 Javascript
Javascript实现简单的富文本编辑器附演示
2014/06/16 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
javascript实现方法调用与方法触发小结
2016/03/26 Javascript
AngularJS基础 ng-csp 指令详解
2016/08/01 Javascript
jQuery实现页面倒计时并刷新效果
2017/03/13 Javascript
微信小程序实战之自定义模态弹窗(8)
2017/04/18 Javascript
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
[02:36]DOTA2英雄基础教程 帕格纳
2014/01/20 DOTA
python设置检查点简单实现代码
2014/07/01 Python
浅析Python中的序列化存储的方法
2015/04/28 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
Python基于有道实现英汉字典功能
2015/07/25 Python
python 2.7.13 安装配置方法图文教程
2018/09/18 Python
Python PIL读取的图像发生自动旋转的实现方法
2019/07/05 Python
Python模拟FTP文件服务器的操作方法
2020/02/18 Python
Django windows使用Apache实现部署流程解析
2020/10/12 Python
分享一个python的aes加密代码
2020/12/22 Python
css3类选择器之结合元素选择器和多类选择器用法
2017/03/09 HTML / CSS
欧洲领先的电子和电信零售商和服务提供商:Currys PC World Business
2017/12/05 全球购物
便携式太阳能系统的创新者:GOAL ZERO
2018/02/04 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
北京离婚协议书范文2014
2014/09/29 职场文书
新闻人物通讯稿
2014/10/09 职场文书
综治维稳工作汇报
2014/10/27 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
2014会计年终工作总结
2014/12/20 职场文书
2015迎新晚会开场白
2015/05/29 职场文书
主题班会开场白
2015/06/01 职场文书
golang switch语句的灵活写法介绍
2021/05/06 Golang
HTML5+CSS+JavaScript实现捉虫小游戏设计和实现
2021/10/16 HTML / CSS
详细聊聊vue中组件的props属性
2021/11/02 Vue.js