小程序倒计时功能

  <view class="time-item">
                <text class="time-item"> 距结束:</text>

                <text class="time_show">{{countDownDay}}</text>
                天
                <text class="time_show">{{countDownHour}}</text>
                时
                <text class="time_show">{{countDownMinute}}</text>
                分
                <text class="time_show">{{countDownSecond}}</text>
                秒

            </view>
    data:{
      countDownDay: 0,
      countDownHour: 0,
      countDownMinute: 0,
      countDownSecond: 0,
}
  /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
  
      var totalSecond =100;//倒计时时间

      var interval = setInterval(function () {
        // 秒数
        var second = totalSecond;

        // 天数位
        var day = Math.floor(second / 3600 / 24);
        var dayStr = day.toString();
        if (dayStr.length == 1) dayStr = '0' + dayStr;

        // 小时位
        var hr = Math.floor((second - day * 3600 * 24) / 3600);
        var hrStr = hr.toString();
        if (hrStr.length == 1) hrStr = '0' + hrStr;

        // 分钟位
        var min = Math.floor((second - day * 3600 * 24 - hr * 3600) / 60);
        var minStr = min.toString();
        if (minStr.length == 1) minStr = '0' + minStr;

        // 秒位
        var sec = second - day * 3600 * 24 - hr * 3600 - min * 60;
        var secStr = sec.toString();
        if (secStr.length == 1) secStr = '0' + secStr;

        this.setData({
          countDownDay: dayStr,
          countDownHour: hrStr,
          countDownMinute: minStr,
          countDownSecond: secStr,
        });
        totalSecond--;
        if (totalSecond < 0) {
          clearInterval(interval);
          wx.showToast({
            title: '活动已结束',
          });
          this.setData({
            countDownDay: '00',
            countDownHour: '00',
            countDownMinute: '00',
            countDownSecond: '00',
          });
        }
      }.bind(this), 1000);

    },

https://blog.youkuaiyun.com/yishengzhiai005/article/details/77099808

第二种方法

      var overTime = ''
      var count = res.data.data.activity.over_time;//倒计时时间
      that.setData({
        t: setInterval(() => {
          count--
          if (count < 0) return clearInterval(t)
          overTime = $.countDown(count);
          that.setData({
            overTime: overTime
          })
        }, 1000)
      })
//倒计时
function countDown(count) {
  var day = Math.floor(count / (60 * 60 * 24))  //计算天数
  var hour = Math.floor(count / (60 * 60) % 24) //计算小时数
  var minute = Math.floor(count / (60) % 60)  //计算分钟数
  var second = Math.floor(count % 60);  //计算秒数
  return day + '天' + hour + '小时' + minute + '分' + second + '秒';
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值