微信小程序实现时间进度条功能


Posted in Javascript onNovember 17, 2020

关于答题类,或者一些游戏环节的小程序需要用到时间进度条,该功能怎么实现?看下面源码

<view class='out' style='margin-top:10px'>
 <view class='in' style='width:{{progressWidth}}%'></view>
</view>
<view class='caozuo'>
 <text>{{progressTime}}秒</text>
 <text bindtap='playbtn' data-change='1'>{{playPausetips}}</text>
</view>

CSS:

.out {margin-left:auto;margin-right:auto;width:250px;height:20px;border:1px solid red;border-radius:20px;overflow:hidden;}
.in {height:100%;background-color:red;}
.caozuo{font-size:14px;color:#333;margin-left:auto;margin-right:auto;width:250px;margin-top:10px;display: flex;justify-content:space-between}

JS:

Page({
 data: {
 progressWidth:0,
 progressTime:60,
 mark:true,
 playPausetips:"开始"
 },
 playbtn() {
 let that = this;
 let mark = that.data.mark;
 if (mark){
  that.timer = setInterval(that.run, 1000); //that.timer关键点
  wx.showToast({
  title: '开始',
  })
  that.setData({
  mark:false,
  playPausetips:"暂停"
  })
 }else{
  clearInterval(that.timer);
  wx.showToast({
  title: '暂停',
  })
  that.setData({
  mark: true,
  playPausetips: "开始"
  })
 }
 },
 run(){
 let that = this;
 let totalProgressTime = 60 //秒
 let progressWidth = that.data.progressWidth; //显示进度
 let progressTime = that.data.progressTime; //时间
 
 if (progressWidth === 100) {
  wx.showToast({
  title: '结束回调处理',
  })
  clearInterval(that.timer);
  that.setData({
  progressTime: totalProgressTime, //进度条需要总时间s
  progressWidth: 100, //进度100%
  progressTime: 60
  })
  return;
 }
 progressTime--;
 progressWidth = (totalProgressTime - progressTime) * (100 / 60)
 that.setData({
  progressWidth: progressWidth,
  progressTime: progressTime
 })
 }
 
})

微信小程序实现时间进度条功能

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 通过事件委派一次绑定多种事件,以减少事件冗余
Jun 30 Javascript
如何阻止复制剪切和粘贴事件为了表单内容的安全
May 23 Javascript
jquery中邮箱地址 URL网站地址正则验证实例代码
Sep 15 Javascript
json数据与字符串的相互转化示例
Sep 18 Javascript
javascript伸缩菜单栏实现代码分享
Nov 12 Javascript
浅谈bootstrap源码分析之tab(选项卡)
Jun 06 Javascript
JavaScript对象数组排序实例方法浅析
Jun 15 Javascript
JavaScript字符串对象
Jan 14 Javascript
JavaScript实现多重继承的方法分析
Jan 09 Javascript
jQuery简单实现的HTML页面文本框模糊匹配查询功能完整示例
May 09 jQuery
基于Vue中使用节流Lodash throttle详解
Oct 30 Javascript
微信小程序实现拍照和相册选取图片
May 09 Javascript
小程序实现投票进度条
Nov 20 #Javascript
javascript跳转与返回和刷新页面的实例代码
Nov 20 #Javascript
vant IndexBar实现的城市列表的示例代码
Nov 20 #Javascript
Vue中rem与postcss-pxtorem的应用详解
Nov 20 #Javascript
关于vue利用postcss-pxtorem进行移动端适配的问题
Nov 20 #Javascript
vue3.0中使用postcss-pxtorem的具体方法
Nov 20 #Javascript
基于Vue+ElementUI的省市区地址选择通用组件
Nov 20 #Javascript
You might like
php设计模式 Mediator (中介者模式)
2011/06/26 PHP
如何使用php判断服务器是否是HTTPS连接
2013/07/05 PHP
非常实用的php弹出错误警告函数扩展性强
2014/01/17 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
2014/10/15 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
2014/11/28 PHP
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
2009/04/24 Javascript
强大的jquery插件jqeuryUI做网页对话框效果!简单
2011/04/14 Javascript
js和jquery对dom节点的操作(创建/追加)
2013/04/21 Javascript
javascript获取select的当前值示例代码(兼容IE/Firefox/Opera/Chrome)
2013/12/17 Javascript
javascript如何使用bind指定接收者
2014/05/04 Javascript
javascript中Number对象的toString()方法分析
2014/12/20 Javascript
两种方法解决javascript url post 特殊字符转义 + &amp; #
2016/04/13 Javascript
JavaScript 中的 this 简单规则
2017/09/19 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
[01:28]国服启动器接入蒸汽平台操作流程视频
2021/03/11 DOTA
python 实现堆排序算法代码
2012/06/05 Python
Python中几个比较常见的名词解释
2015/07/04 Python
python结合selenium获取XX省交通违章数据的实现思路及代码
2016/06/26 Python
Linux下为不同版本python安装第三方库
2016/08/31 Python
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
Python读取txt文件数据的方法(用于接口自动化参数化数据)
2018/06/27 Python
如何在django里上传csv文件并进行入库处理的方法
2019/01/02 Python
详解10个可以快速用Python进行数据分析的小技巧
2019/06/24 Python
使用python实现男神女神颜值打分系统(推荐)
2019/10/31 Python
python定义类self用法实例解析
2020/01/22 Python
Python爬虫代理池搭建的方法步骤
2020/09/28 Python
大学生先进事迹材料
2014/02/16 职场文书
超市开业庆典策划方案
2014/05/14 职场文书
英语课前三分钟演讲稿(6篇)
2014/09/13 职场文书
法院四风对照检查材料思想汇报
2014/10/06 职场文书
Python标准库之typing的用法(类型标注)
2021/06/02 Python
豆瓣2021评分最高动画剧集-豆瓣评分最高的动画剧集2021
2022/03/18 日漫
TV动画《政宗君的复仇》第二季制作决定PV公布
2022/04/02 日漫
Docker下安装Oracle19c
2022/04/13 Servers
IDEA中sout快捷键无效问题的解决方法
2022/07/23 Java/Android