详解微信小程序——自定义圆形进度条


Posted in Javascript onDecember 29, 2016

微信小程序 自定义圆形进度条,具体如下:

无图无真相,先上图:

详解微信小程序——自定义圆形进度条

实现思路,先绘制底层的灰色圆圈背景,再绘制上层的蓝色进度条。

代码实现:

JS代码:

Page({ 
 data: {}, 
 onLoad: function (options) { 
  // 页面初始化 options为页面跳转所带来的参数 
 }, 
 onReady: function () { 
 
  // 页面渲染完成 
  var cxt_arc = wx.createCanvasContext('canvasArc');//创建并返回绘图上下文context对象。 
  cxt_arc.setLineWidth(6); 
  cxt_arc.setStrokeStyle('#d2d2d2'); 
  cxt_arc.setLineCap('round') 
  cxt_arc.beginPath();//开始一个新的路径 
  cxt_arc.arc(106, 106, 100, 0, 2*Math.PI, false);//设置一个原点(106,106),半径为100的圆的路径到当前路径 
  cxt_arc.stroke();//对当前路径进行描边 
   
  cxt_arc.setLineWidth(6); 
  cxt_arc.setStrokeStyle('#3ea6ff'); 
  cxt_arc.setLineCap('round') 
  cxt_arc.beginPath();//开始一个新的路径 
  cxt_arc.arc(106, 106, 100, -Math.PI * 1 / 2, Math.PI*6/5, false); 
  cxt_arc.stroke();//对当前路径进行描边 
 
  cxt_arc.draw(); 
   
 }, 
 onShow: function () { 
  // 页面显示 
 }, 
 onHide: function () { 
  // 页面隐藏 
 }, 
 onUnload: function () { 
  // 页面关闭 
 } 
})

页面布局:

<view class="wrap"> 
 <view class="top"> 
  <canvas class="cir" style="width:212px; height:212px;" canvas-id="canvasArc"> 
  </canvas> 
 
  <view class="cc">中间</view> 
 
 </view> 
</view>

CSS样式:

.cir{ 
 display: inline-block; 
 margin-top: 20rpx; 
 
} 
 
.top{ 
 text-align: center 
} 
 
.cc{ 
  
 margin-top: -120px; 
  
}

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

Javascript 相关文章推荐
JavaScipt基本教程之JavaScript语言的基础
Jan 16 Javascript
jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
Nov 15 Javascript
Jquery 表单验证类介绍与实例
Jun 09 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 图片库
Jan 09 Javascript
JS限制文本框只能输入数字和字母方法
Feb 28 Javascript
js实现简易的单数字随机抽奖(0-9)
Mar 19 Javascript
jQuery的promise与deferred对象在异步回调中的作用
May 03 Javascript
JavaScript中的boolean布尔值使用学习及相关技巧讲解
May 26 Javascript
NODE.JS跨域问题的完美解决方案
Oct 20 Javascript
jquery将标签元素的高设为屏幕的百分比
Apr 19 jQuery
js针对图片加载失败的处理方法分析
Aug 24 Javascript
微信小程序tab切换可滑动切换导航栏跟随滚动实现代码
Sep 04 Javascript
JS作用域深度解析
Dec 29 #Javascript
javascript中的深复制详解及实例分析
Dec 29 #Javascript
canvas学习之API整理笔记(一)
Dec 29 #Javascript
Javascript Function.prototype.bind详细分析
Dec 29 #Javascript
jQuery自定义插件详解及实例代码
Dec 29 #Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
Dec 29 #Javascript
JavaScript获取短信验证码(周期性)
Dec 29 #Javascript
You might like
用php实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
整理的9个实用的PHP库简介和下载
2010/11/09 PHP
PHP删除HTMl标签的实现代码
2013/06/30 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
获取div编辑框,textarea,input text的光标位置 兼容IE,FF和Chrome的方法介绍
2012/11/08 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
标题过长使用javascript按字节截取字符串
2014/04/24 Javascript
jQuery中detach()方法用法实例
2014/12/25 Javascript
jquery利用命名空间移除绑定事件的方法
2015/03/11 Javascript
微信小程序自定义导航隐藏和显示功能
2017/06/13 Javascript
JS中利用swiper实现3d翻转幻灯片实例代码
2017/08/25 Javascript
Node.js中Bootstrap-table的两种分页的实现方法
2017/09/18 Javascript
浅谈Node.js之异步流控制
2017/10/25 Javascript
vue计算属性computed、事件、监听器watch的使用讲解
2019/01/21 Javascript
JS大坑之19位数的Number型精度丢失问题详解
2019/04/22 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
2020/04/22 Javascript
python计数排序和基数排序算法实例
2014/04/25 Python
Python中下划线的使用方法
2015/03/27 Python
深入源码解析Python中的对象与类型
2015/12/11 Python
Python3爬虫使用Fidder实现APP爬取示例
2018/11/27 Python
python初学者,用python实现基本的学生管理系统(python3)代码实例
2019/04/10 Python
int在python中的含义以及用法
2019/06/27 Python
Python 调用 Outlook 发送邮件过程解析
2019/08/08 Python
解决Django migrate不能发现app.models的表问题
2019/08/31 Python
关于Tensorflow使用CPU报错的解决方式
2020/02/05 Python
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
Berghaus官网:户外服装和设备,防水服
2020/01/17 全球购物
linux面试题参考答案(6)
2016/06/23 面试题
英语专业毕业个人求职自荐信
2013/09/21 职场文书
单位租房协议书范本
2014/12/04 职场文书
兼职安全员岗位职责
2015/02/15 职场文书
无房证明样本
2015/06/17 职场文书
乡镇司法所2015年度工作总结
2015/10/14 职场文书
HTML5来实现本地文件读取和写入的实现方法
2021/05/25 HTML / CSS
利用python实时刷新基金估值(摸鱼小工具)
2021/09/15 Python