700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 微信小程序 环形进度条_微信小程序实现圆形进度条动画

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

时间:2021-06-30 19:28:12

相关推荐

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

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

上图:

代码:

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:

点击开始

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;

}

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

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。