答题活动小程序答题过程中关于单题倒计时问题优化
发布于 4 年前 作者 chao49 1102 次浏览 来自 分享

答题过程中关于单题倒计时,切后台后,再切回去,倒计时停止计时的问题

首先回顾下获取时间戳的三种方式

Date.parse(new Date())

1620887887000

(new Date()).valueOf()

1620887897820

new Date().getTime()

1620887906660

上述三种获取时间戳的方式,其中方式一是把毫秒改为000了

Date.parse(new Date())/1000

这个时候获取到当前时间戳的秒,然后加上倒计时的时长,比如20秒

1620887887

+20

1620887907

当用户切回来之后,用当前的时间戳与1620887907比较大小,如果小于1620887907,你们计算差,重新倒计时;如果大于1620887907,那么提示倒计时结束,直接跳转到下一题

假设返回的倒计时是2分钟,那么计算出2分钟后的时刻,倒计时计算距离这个时刻还有多久,就可以解决这个问题了: 假设:倒计时120s,当前时刻是2018/12/05 17:11:00,那么2018/12/05 17:13:00,倒计时结束

setInterval(function() {    

downTime = new Date('2018/12/05 17:13:00').getTime() - new Date().getTime()

},1000)

回到顶部