weixin_41584177 2018-03-21 07:07 采纳率: 0%
浏览 1935
已采纳

小程序中如何显示倒计时

如何小程序js开发中在页面显示到某天(比如2018年9月1日)的倒计时,精确到秒而且每秒都会变动,请具体谢谢

  • 写回答

3条回答 默认 最新

  • Go 旅城通票 2018-03-21 07:36
    关注

    Page的onLoad事件用setInterval定时setData就行了,大概下面这样
    wxml

     {{ticker}}
    
     Page({
      data: {
          ticker: ''
      },
      getTicker: function (totalSec) {
          var s = '';
          var v = Math.floor(totalSec / 24 / 60 / 60); if (v > 0) s += v + '天'; totalSec -= v * 24 * 60 * 60;
          v = Math.floor(totalSec / 60 / 60); if (v > 0) s += v + '小时'; totalSec -= v * 60 * 60;
          v = Math.floor(totalSec / 60); if (v > 0) s += v + '分钟'; totalSec -= v * 60;
          s += v + '秒';
          return s;
      },
      onLoad: function (options) {
          var d = new Date(), endDate = new Date('2018/9/1'), totalSec = (endDate.getTime() - d.getTime()) / 1000;
          endDate = '距离' + endDate.toLocaleDateString() + ':';
          setInterval(function () {
              totalSec--;
              this.setData({ticker:endDate+ this.getTicker(totalSec)})
          }.bind(this), 1000);
          this.setData({ ticker: endDate + this.getTicker(totalSec) })
      }
        }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办