原生JS活动倒计时实现思路

  • 由于一个活动页面里面有多个活动,所以用map去操作每一个对象,只有一个活动的话就不需要遍历了,活动分为距离活动开始和距离活动结束两个倒计时,自己可按需求增减代码。还有就是IOS不兼容时间用“-”连接,所以移动端的话要把“-”替换成“/”做一下兼容。
由于一个活动页面里面有多个活动,所以用map去操作每一个对象,只有一个活动的话就不需要遍历了,活动分为距离活动开始和距离活动结束两个倒计时,自己可按需求增减代码。还有就是IOS不兼容时间用“-”连接,所以移动端的话要把“-”替换成“/”做一下兼容。
var timer = setInterval(function() {mapForItem:function() {data.map(function(item) {var startTime = new Date(item.timeStart.replace(/-/g, "/")).getTime() //获取活动开始时间戳var endtTime = new Date(item.timeEnd.replace(/-/g, "/")).getTime() //获取活动结束时间戳var currentTime = new Date().getTime() //获取当前时间戳var surplusTime = startTime - currentTime > 0 ? startTime - currentTime : endtTime - currentTime //计算距离活动开始/结束剩余时间item.hours =  Math.floor(surplusTime / (1000 * 60 * 60)) < 10 ? '0' + Math.floor(surplusTime / (1000 * 60 * 60)) : Math.floor(surplusTime / (1000 * 60 * 60)) //倒数小时surplusTime = surplusTime - (item.hours * 1000 * 60 * 60) //减去小时的时间戳item.minunts = Math.floor(surplusTime / (1000 * 60)) < 10 ? '0' + Math.floor(surplusTime / (1000 * 60)) : Math.floor(surplusTime / (1000 * 60)) //倒数分钟surplusTime = surplusTime - (item.minunts * 1000 * 60) //减去分钟的时间戳item.seconds = Math.floor(surplusTime / 1000) < 10 ? '0' + Math.floor(surplusTime / 1000) : Math.floor(surplusTime / 1000) //倒数秒数if(endtTime - currentTime < 1000) {//当剩余的时间戳小于1000时代表小于1秒,即可清除定时器clearInterval(timer)item.hours = '00'item.minunts = '00'item.seconds = '00'}})},
}, 1000)

原生JS活动倒计时实现思路相关推荐

  1. js php活动倒计时,js活动倒计时实现思路?

    没时间看的,直接看下文 「倒计时实现代码」 js获取服务器时间 使用Ajax(cache: false)去GET当前js文件 读取其HTTP的Date头(服务器端时间),根据此头计算客户端与本地时间的 ...

  2. 基于Vue.js活动倒计时组件

    vue2-countdown vue活动倒计时组件及遇到的坑 基于vue2.x的活动倒计时组件 主要是最近为了公司做一个倒计时活动才找到了这个组件使用的.于是去github上翻看了文档结果是一年多没更 ...

  3. js 活动倒计时详解

    背景 前端页面倒计时功能在很多场景中会用到,如运营活动开始倒计时和活动结束倒计时,又如购物网站的秒杀倒计时,抢购倒计时,还有我们手Q春节抢红包倒计时等等--. 最近的话费代付项目中,也涉及倒计时功能, ...

  4. js php活动倒计时,JS活动倒计时代码

    主要运用到JS的Date对象~ Title window.οnlοad=function jb(){ var j=setTimeout(jb,1000); //创建时间 var date=new Da ...

  5. 原生js春节倒计时@酷酷航

    <script type="text/javascript">var time_now_server,time_now_client,time_end,time_ser ...

  6. 原生js实现移动动画,变化动画

    初生牛犊不怕虎,想用博客来记录自己以前的一些学习经历,对您有帮助的话请留下你们的赞哦! 话不多说进入正题 首先我们应该怎么用原生js实现动画,思路是这样的 通过某些方法获取到当前元素的样式属性值,例如 ...

  7. 原生js 或vue实现60分钟倒计时案例

    使用场景类似于 订单倒计时,或答题倒计时,代码如下 在Vue中封装了如下的方法 data () {return {countdownTxt:'',//要显示的倒计时文案};}, // 定义一个方法 方 ...

  8. 原生JS仿造华为商城案例-实现了简单页面-两种轮播图思路的实现-动态展示数据

    文章目录 功能简介 项目准备 项目说明 方案一:源代码 CSS样式 HTML结构 JS逻辑 方案二:源代码 CSS样式 HTML结构 JS逻辑 功能简介 页面展示 该项目功能实现: 无限滚动轮播图 j ...

  9. js实现计时器---解决活动倒计时(还有多少天、时、分、秒)

    活动倒计时,是非常重要且常见的形式,例如京东.淘宝等商品活动,优惠或者打折所呈现的形式.  话不多说,上代码!!! <!DOCTYPE html> <html><head ...

最新文章

  1. win2000堆的调试
  2. iis负载均衡与文件同步[网摘]
  3. asp.net core2.2 多用户验证和授权
  4. seo关键词互点软件报价_SEO关键词优化收费问题和外包报价问题,一文详解
  5. 如何设置Pycharm在打开Terminal终端时,自动进入虚拟环境?
  6. zabbix-自定义监控项
  7. 学校计算机社团都干些什么,计算机社团管理制度
  8. 普通机器学习模型的提升
  9. div html 下边加横线_css怎么添加下划线?
  10. R.I.P. Alan Turing(旧文搬运15.6.6)
  11. 非越狱iPad实现外接键盘全APP五笔输入(IOS14已自带五笔)
  12. (七)练习:美萍酒店管理系统中系统设置的房间管理选项卡部分测试
  13. hadoop学习笔记7-Azkaban
  14. w7计算机文件夹打开怎么设置密码,win7电脑文件夹怎么设置密码
  15. android 自定义锁屏api,Android锁屏小部件
  16. 测试管理工具-禅道---软件缺陷和软件缺陷种类
  17. 数据模拟:利用Java模拟数据(姓名,邮箱,地址,电话等信息,时间,工资,1-10随机数)并存入mysql
  18. Java OOP 9 Java I/O
  19. AI人工智能毕业设计课题:怀旧照片网站,黑白图像图片上色系统
  20. win10从服务器复制文件出现未知错误,win10系统打开公文包提示“发生未知错误 某些文件未复制”的处理办法...

热门文章

  1. 金山云智能营销平台再升级,AI 投放助力游戏厂商精准到达;微医发布 AI 解决方案,提升县域医疗服务能力...
  2. 高考放榜季 | 知道创宇全方位保障教育政务网站安全可用
  3. 获取微信用户在微信小店的订单
  4. 计算机上硬盘显示不出来怎么办,加装硬盘不显示怎么办_新硬盘装上去了但是没显示这么解决...
  5. c语言编程的难点,c语言编程的难点
  6. FPGA开发软件详细清单
  7. fx3u4ad一adp说明书_FX3U-4AD-ADP使用手册三菱FX3U-4AD-ADP用户手册 - 三菱
  8. 基于新浪微博API生成短链接的几款在线工具
  9. 做python的心得体会_实训python的心得体会
  10. vivo手机系统打印服务器,原来vivo手机自带扫描功能,文件瞬间电子化!几千的扫描仪省下了...