微信小程序实现圆形进度条动画


Posted in Javascript onNovember 18, 2020

本文实例为大家分享了微信小程序动画之圆形进度条,供大家参考,具体内容如下

上图:

微信小程序实现圆形进度条动画

代码:

js:

//获取应用实例
var app = getApp()

var interval;
var varName;
var ctx = wx.createCanvasContext('canvasArcCir');

Page({
 data: {
 },
 drawCircle: function () {
 clearInterval(varName);
 function drawArc(s, e) {
 ctx.setFillStyle('white');
 ctx.clearRect(0, 0, 200, 200);
 ctx.draw();
 var x = 100, y = 100, radius = 96;
 ctx.setLineWidth(7);
 ctx.setStrokeStyle('#BFEFFF');
 ctx.setLineCap('round');
 ctx.beginPath();
 ctx.arc(x, y, radius, s, e, false);
 ctx.stroke()
 ctx.draw()
 }
 var step = 1, startAngle = 1.5 * Math.PI, endAngle = 0;
 var animation_interval = 1000, n = 60;
 var animation = function () {
 if (step <= n) {
 endAngle = step * 8 * Math.PI / n + 1.5 * Math.PI;
 drawArc(startAngle, endAngle);
 step++;
 } else {
 clearInterval(varName);
 }
 };
 varName = setInterval(animation, animation_interval);
 },
 onReady: function () {
 //创建并返回绘图上下文context对象。
 var cxt_arc = wx.createCanvasContext('canvasCircle');
 cxt_arc.setLineWidth(8);
 cxt_arc.setStrokeStyle('#EDEDED');
 cxt_arc.setLineCap('round');
 cxt_arc.beginPath();
 cxt_arc.arc(100, 100, 96, 0, 2 * Math.PI, false);
 cxt_arc.stroke();
 cxt_arc.draw();
 },
 onLoad: function (options) {

 }
})

wxml:

<view class="wrap">
 <view class="circle-box">
 <canvas class="circle" style="width:200px; height:200px;" canvas-id="canvasArcCir">
 </canvas>
 <canvas class="circle" style="z-index: -5; width:200px; height:200px;" canvas-id="canvasCircle">
 </canvas>
 <view class="draw_btn" bindtap="drawCircle">点击开始</view>
 </view>
</view>

wxss:

page {
 width: 100%;
 height: 100%;
 background-color: #fff;
}

.circle-box {
 text-align: center;
 margin-top: 10vw;
}

.circle {
 position: absolute;
 left: 0;
 right: 0;
 margin: auto;
}

.draw_btn {
 width: 28vw;
 position: absolute;
 top: 31vw;
 right: 0;
 left: 0;
 margin: auto;
 border: 1px #0D0D0D solid;
 background-color: #BFEFFF;
 border-radius: 5vw;
}

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

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

Javascript 相关文章推荐
[JS源码]超长文章自动分页(客户端版)
Jan 09 Javascript
jQuery解决下拉框select设宽度时IE 6/7/8下option超出显示不全
May 27 Javascript
JS实现字体选色板实例代码
Nov 20 Javascript
Dojo Javascript 编程规范 规范自己的JavaScript书写
Oct 26 Javascript
jQuery的one()方法用法实例
Jan 19 Javascript
Bootstrap弹出框(modal)垂直居中的问题及解决方案详解
Jun 12 Javascript
Vue 2.X的状态管理vuex记录详解
Mar 23 Javascript
基于原生js运动方式关键点的总结(推荐)
Oct 01 Javascript
取消Bootstrap的dropdown-menu点击默认关闭事件方法
Aug 10 Javascript
vue动画之点击按钮往上渐渐显示出来的实例
Sep 29 Javascript
vue的for循环使用方法
Feb 12 Javascript
VsCode与Node.js知识点详解
Sep 05 Javascript
JavaScript迭代器的含义及用法
Jun 21 #Javascript
js事件触发操作实例分析
Jun 21 #Javascript
微信小程序实现下拉刷新动画
Jun 21 #Javascript
vue elementUI使用tabs与导航栏联动
Jun 21 #Javascript
Ajax请求时无法重定向的问题解决代码详解
Jun 21 #Javascript
vue配置文件实现代理v2版本的方法
Jun 21 #Javascript
微信小程序自定义多列选择器使用详解
Jun 21 #Javascript
You might like
颠覆常识!无色透明的咖啡诞生了(中日双语)
2021/03/03 咖啡文化
浅析PHP substr,mb_substr以及mb_strcut的区别和用法
2013/06/21 PHP
getJSON跨域SyntaxError问题分析
2014/08/07 PHP
php使用Cookie控制访问授权的方法
2015/01/21 PHP
几行代码轻松实现PHP文件打包下载zip
2017/03/01 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
js解析与序列化json数据(三)json的解析探讨
2013/02/01 Javascript
JQuery实现点击div以外的位置隐藏该div窗口
2013/09/13 Javascript
有效提高JavaScript执行效率的几点知识
2015/01/31 Javascript
Javascript中判断对象是否为空
2015/06/10 Javascript
javascript表单验证大全
2015/08/12 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
实例详解jQuery Mockjax 插件模拟 Ajax 请求
2016/01/12 Javascript
VUEJS实战之利用laypage插件实现分页(3)
2016/06/13 Javascript
兼容浏览器的js事件绑定函数(详解)
2017/05/09 Javascript
vue2.0使用swiper组件实现轮播效果
2017/11/27 Javascript
记一次webpack3升级webpack4的踩坑经历
2018/06/12 Javascript
Python实现partial改变方法默认参数
2014/08/18 Python
Python转换HTML到Text纯文本的方法
2015/01/15 Python
Python中协程用法代码详解
2018/02/10 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
Python实现投影法分割图像示例(二)
2020/01/17 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
python dict如何定义
2020/09/02 Python
纯css3显示隐藏一个div特效的具体实现
2014/02/10 HTML / CSS
viagogo意大利票务平台:演唱会、体育比赛、戏剧门票
2018/01/26 全球购物
护士辞职信范文
2014/01/19 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
学习“七一”讲话精神体会
2014/07/08 职场文书
国庆节活动总结
2014/08/26 职场文书
运动会搞笑广播稿
2014/10/14 职场文书
给老婆的检讨书1000字
2015/01/01 职场文书
音乐教师个人总结
2015/02/06 职场文书
2015国庆66周年宣传语
2015/07/14 职场文书
图书借阅制度范本
2015/08/06 职场文书
《废话连篇——致新手》——chinapizza
2022/04/05 无线电