版权声明:本文为博主原创文章,转载请注明原文出处! https://blog.csdn.net/qq_23375733/article/details/82766192
下面的例子是微信小程序的写法和web端的都是差不多的,只是显示在页面的写法不一样:
var timer = null;
/**
* 倒计时
* @param time 服务端传来的时间戳
*/
function countdown(time) {
var that = this;
timer = setInterval(function () {
var leftTime = time - new Date().getTime();
//倒计时结束
if (leftTime <= 1) {
clearInterval(timer);
that.setData({
m: '00',
s: '00',
timer: null
})
return;
}
var leftSecond = parseInt(leftTime / 1000);
var Day = Math.floor(leftSecond / (60 * 60 * 24)); //天数
var Hour = Math.floor((leftSecond - Day * 24 * 60 * 60) / 3600); //小时
var Minute = Math.floor((leftSecond - Day * 24 * 60 * 60 - Hour * 3600) / 60); //分钟
var Second = Math.floor(leftSecond - Day * 24 * 60 * 60 - Hour * 3600 - Minute * 60); //秒数
if (Minute >= 0 && Second >= 0) {
that.setData({
m: Minute < 10 ? '0' + Minute : Minute,
s: Second < 10 ? '0' + Second : Second,
})
}
}, 1000)
},
大概的样子:
这边是只显示分秒的倒计时,如果想显示剩余几天几时几分几秒的,
可以把 Day 和 Hour 的值赋值到data里显示到页面即可!