我们在逛某宝,或者逛某东时,我们时常看到一个倒计时,时间一到就开抢,这个倒计时是如何做的呢?让我为大家介绍一下。
理性分析一下:
1.用将来时间减去现在时间就是剩余的时间
2.核心:使用将来的时间戳减去现在的时间戳
3.把剩余的时间转换为 天 时 分 秒
注意:通过时间戳得到的是毫秒,需要转换为秒在计算
转换公式:
d = parseInt(总秒数 / 60 / 60 / 24) 计算天数
h = parseInt(总秒数 / 60 / 60 % 24) 计算小时
m = parseInt(总秒数 / 60 % 60) 计算分数
s = parseInt(总秒数 % 60) 计算当前秒数
// 封装时间function getTime() {// 获取当前的时间戳let now = +new Date()// 获取将来的时间戳let last = +new Date("2023-11-3 18:30:00")// 获取剩余的时间戳 记得转换为秒数let count = (last - now) / 1000// 转换为时分秒// h = parseInt(总秒数 / 60 / 60 % 24) 计算小时// m = parseInt(总秒数 / 60 % 60) 计算分数// s = parseInt(总秒数 % 60) 计算当前秒数let h = parseInt(count / 60 / 60 % 24)h = h < 10 ? "0" + h : hlet m = parseInt(count / 60 % 60)m = m < 10 ? "0" + m : mlet s = parseInt(count % 60)s = s < 10 ? "0" + s : s// 把时分秒写到对应的盒子里面document.querySelector("#hour").innerHTML = hdocument.querySelector("#minutes").innerHTML = mdocument.querySelector("#second").innerHTML = s}// 使用定时器setInterval(getTime,1000)
效果图:
感谢大家的阅读,如有不对地方,可以向我提出,感谢大家!