如何小程序js开发中在页面显示到某天(比如2018年9月1日)的倒计时,精确到秒而且每秒都会变动,请具体谢谢
3条回答 默认 最新
- 斯洛文尼亚旅游 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) }) } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报