专栏首页大前端微信小程序 Utils丨SetInterval 实现倒计时

微信小程序 Utils丨SetInterval 实现倒计时


WXML

<text>{{day}}天{{hour}}时{{minute}}分{{second}}秒</text>

JS

  onLoad: function (options) {
    that = this;
    that.countDown('2019-10-24 10:00:00');
  }
     
  /**
   * 倒计时
   * 
   * @param endTime 结束日期+时间
   * **/
  countDown:function(endTime){
    that.setData({
      timer: setInterval(function(){

        var downTime = parseInt(new Date(endTime.replace(/-/g, "/")).getTime() - new Date().getTime())
        
        // 倒计时结束
        if(downTime <= 0){
           that.setData({
             day: '00',
             hour: '00',
             minute: '00',
             second: '00'
           })
           clearInterval(that.data.timer);
           return;
        }

        var d = parseInt(downTime / 1000 / 3600 / 24);
        var h = parseInt(downTime / 1000 / 3600 % 24);
        var m = parseInt(downTime / 1000 / 60 % 60);
        var s = parseInt(downTime / 1000 % 60);

        d < 10 ? d = '0' + d : d;
        h < 10 ? h = '0' + h : h;
        m < 10 ? m = '0' + m : m;
        s < 10 ? s = '0' + s : s;

        that.setData({
          day: d,
          hour: h,
          minute: m,
          second: s
        })

      }, 1000)
    })
  },

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Flutter跨平台移动端开发丨顶部导航栏 TabBar Widget

    支持左右滑动切换、不限 item 数量的 tabbar 是分类信息列表展示必不可少的组件,在 flutter 中可通过 AppBar + TabBar + P...

    码脑
  • Flutter跨平台移动端开发丨WillPopScope、InheritedWidget、Theme

    通过 InheritedWidget 数据可以在 Widget 树中从上向下共享与传递,组件之间也可实现跨级传递数据

    码脑
  • Kotlin BigDecimal 精确计算

    码脑
  • TW洞见 | 崔鹏飞:Scala中Stream的应用场景及其实现原理

    假设一个场景 需要在50个随机数中找到前两个可以被3整除的数字。 听起来很简单,我们可以这样来写: ? 一个产生50个随机数的函数; 一个检查某数字是否能被3...

    ThoughtWorks
  • 前端-微信小程序之圆形进度条

    (3)一个canvas,使用绝对定位作为背景,canvas-id="canvasProgressbg"

    grain先森
  • 微信小程序之圆形进度条

    (1)使用2个canvas 一个是背景圆环,一个是彩色圆环。 (2)使用setInterval 让彩色圆环逐步绘制。

    grain先森
  • 专属| Linux内核曝漏洞

    在2018Black Hat会议上,来自Kzen Networks的安全研究人员透露: Cortana存在漏洞可利用Cortana漏洞绕过Windows 10系...

    漏斗社区
  • MathorNet

    项目全部说明请查看mathors/MathorNet,里面有word,以及补充图片

    mathor
  • bootstrap 颜色选择器

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>bootSt...

    用户5760343
  • JS实现一个可控制的进度条

    进度条一直以来都是很多地方都可以用的,那么很多的时候其实我们都是自己在网上找代码,直接使用的,很少有人自己写源码的,今天呢我们就简单的实现一个进度条的效果,没有...

    何处锦绣不灰堆

扫码关注云+社区

领取腾讯云代金券