×

【微信小程序】使用setTimeout试试定时器

作者:andy0012019.08.02来源:Web前端之家浏览:20470评论:0
关键词:小程序定时器
微信公众号

微信公众号

setTimeout(func, time)可以使得每隔time毫秒就执行一次func函数,常用来做计时器/时钟。

下面是在微信小程序中的使用思路,只截取了关键部分代码:

var timer; // 计时器

Page({  // ...省略  
  // 自定义的开始按钮  startBtn: function () {
    console.log("开始按钮");
    Countdown();
  },

  // 自定义的暂停按钮  
  pauseBtn: function () { 
    console.log("暂停按钮");
    clearTimeout(timer);
  },});// 倒计时function Countdown() {
  timer = setTimeout(function () {
    console.log("----Countdown----");
    Countdown();
  }, 1000);
};

思路:

setTimeout()延迟指定毫秒数后执行指定函数,可通过递归调用setTimeout()来实现各种计时器功能。

如果想做每秒钟刷新一次的时钟,只需每次执行时间转换函数并setData更新界面即可。

使用clearTimeout("定时器的名字")可以停下指定的计时器。

下面是Javascript关于时间的转换函数。

// 秒数 --> 时:分:秒function formatTime(seconds) {    return [
        parseInt(seconds / 60 / 60), // 时
        parseInt(seconds / 60 % 60), // 分
        parseInt(seconds % 60)       // 秒
    ]
        .join(":")
        .replace(/\b(\d)\b/g, "0$1");
}

另外,做定时重复调用函数的功能时,用setTimeOut()代替setInterval(),因为setInterval()是有误差的!

温馨提示:本文作者系 ,经Web前端之家编辑修改或补充,转载请注明出处和本文链接:
https://jiangweishan.com/article/weib-2342394-023940-9.html

网友评论文明上网理性发言 已有0人参与

发表评论:

最新留言

  • Web前端之家

    可以的,有什么问题吗?...

  • 访客

    我就试试的...

  • a235

    不能比啊,老外赚钱就是多!...

  • Web前端之家

    备份是必须的,避免麻烦!...

  • a235

    总结得不错,正好用到,提前备份还是最靠谱啊!...

  • Web前端之家

    谢谢支持,请持续关注Web前端之家!...

  • 访客

    文章很棒,做即时通讯也可以试试【GoEasy】这个框架,官网文档详细还提供了各种demo,大大降低了...

  • Web前端之家

    是的,等其他人验证没问题再装吧,总会有第一个吃螃蟹的人,哈哈!!...

首页|JavaScript|HTML|HTML4|HTML5|CSS3|开发工具|性能优化|移动开发|前端教程|性能优化|开发工具|酷站欣赏|UI设计|前端教程

Copyright © 2021 Web前端之家(www.jiangweishan.com) 版权所有 All Rights Reserved.
粤ICP备12067512号-1

Copyright Your WebSite.Some Rights Reserved.

Powered By Z-BlogPHP 1.7.1