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

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

<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>

  

.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}

  

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
    })
  }

})

  

原文地址:https://www.cnblogs.com/changxue/p/8830918.html

时间: 2024-11-04 21:42:18

微信小程序 - 时间进度条功能的相关文章

微信小程序开发平台新功能「云开发」快速上手体验

微信小程序开发平台刚刚开放了一个全新的功能:云开发. 简单地说就是将开发人员搭建微信小程序后端的成本再次降低,此文刚好在此产品公测时,来快速上手看看都有哪些方便开发者的功能更新. 微信小程序一直保持一个比较稳定的节奏进行功能的开放与更新,不激进但是又不怠慢,就一直像微信产品的节奏一样,而在生活中我们使用微信小程序的频率也慢慢高起来,如 KFC 自助点个餐.下单一些较冷门的商品等等. 而我给大家免费更新的「微信小程序开发视频教程」大纲也一直在修正与增加,从 40 集增加到 60 集,在云开发发布后

微信小程序又一爆炸功能上线-云开发

云开发介绍 开发者可以使用云开发开发微信小程序.小游戏,无需搭建服务器,即可使用云端能力. 云开发为开发者提供完整的云端支持,弱化后端和运维概念,无需搭建服务器,使用平台提供的 API 进行核心业务开发,即可实现快速上线和迭代,同时这一能力,同开发者已经使用的云服务相互兼容,并不互斥. 目前提供三大基础能力支持: 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写自身业务逻辑代码 数据库:一个既可在小程序前端操作,也能在云函数中读写的 JSON 数据库 存储:在小程序前端直接上传/下

微信小程序中悬浮窗功能的实现(主要探讨和解决在原生组件上的拖动)

问题场景 所谓悬浮窗就是图中微信图标的按钮,采用fixed定位,可拖动和点击. 这算是一个比较常见的实现场景了. 为什么要用cover-view做悬浮窗?原生组件出来背锅了~ 最初我做悬浮窗用的不是cover-view,而是view. 这是简化的代码结构: index.wxml: <view class="move-view" style=" top:{{top}}px;left:{{left}}px;" bindtap="goToHome"

微信小程序后台持续定位功能使用

微信小程序团队在7月30日更新了 基础库 2.8.0 其中新添加了小程序后台持续定位功能和联系定位的接口 从上到下分别是 1.wx.onLocationChange//监听位置实时变化 2.wx.stopLocationUpdate//关闭监听实时位置变化,前后台都停止消息接收 3.wx.startLocationUpdate//开启小程序进入前台时接收位置消息 4.wx.startLocationUpdataBackground//开启小程序进入前后台时均接收位置消息 详细信息可查看https

微信小程序之购物车的功能

1.购物车里面功能无非就是删除商量,增加(减少)数量,单全选,商品合计 2.这段代码var cartItems = this.data.cartItems  获取购物车里面的商品,之后在通过下标e.currentTarget.dataset.index来获取当前的商品   选择事件(单全选) //单选 select:function(e){ var CheckAll = this.data.CheckAll; CheckAll = !CheckAll var cartItems = this.d

【微信小程序】---Socket聊天功能实现

一.什么是socket? 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socke 本章案例中我们使用HTML5中的webSocket. websocket是HTML5开始提供的一种浏览器与服务器进行双向通讯的网络技术. 使用websocket浏览器和服务器只需要做一个握手的动作,然后浏览器和服务器之间就形成了一条快速的通道,两者之间就可以互相传送 好处: 节省资源:互相沟通的Header是很小的 大概是2bytes. 推送信息:不需要客户端请求,服务器可以主动传送

微信小程序附近的店功能即将开启,小程序员福利帖

一号旺铺微信小程序三大新功能:可相互跳转、批量管理门店

可相互跳转.批量管理门店,小程序是抓住零售新机会的一把利器吗?一号旺铺专业.专注开发小程序,就微信小程序的三个功能与大家分享. 同一个公众号下关联的 10 个同主体小程序和 3 个非同主体小程序之间,可以调用接口直接相互跳转. 微信小程序新动向:可相互跳转.批量管理门店 可相互跳转.批量管理门店,小程序是抓住零售新机会的一把利器吗? 小程序到底能不能抓住零售新机会,成效还在验证中.不过为了实现这一目标,小程序又释放了一个重大功能. 6 月 21 日深夜,微信官方表示,与同一公众号关联的小程序之间

店铺无缝对接一号旺铺小程序 盘点微信小程序新增功能

前段时间,笔者写过一篇<不开发,商家店铺如何快速接入微信一号旺铺小程序>的文章.结果反响平平,无人问津.所以,笔者就在想,也许小程序真的大势已去. 盘点迄今为止微信小程序增加的功能:价值提升,商家福音到了! 盘点迄今为止微信小程序增加的功能:价值提升,商家福音到了! 但是,就在本人下定决心以后少关注小程序的当口,腾讯似乎终于觉醒了,张小龙也终于向现实低头妥协,微信官方宣布的小程序新增功能绝地反击,热乎了众多商家的心,也活跃了个人创业开发者的兴奋基因.其实,自小程序面市已来,其功能一直在不断完善