狗万官网酒店 > 狗万官网下载 > 微信小程序实现圆形进度条动画_javascript艺术

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

来源: 2019-08-04 19:43 我来投稿 参与评论
这篇文章主要为大家详细介绍了微信小程序实现圆形进度条动画,具有原则性的参考价值,感兴趣的同伴们可以参考一下

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

上图:

代码:

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

上述就是本文的方方面面内容,瞩望对大家的上学有所帮助,也愿意大家多多支持脚本的师。

义务编辑:狗万官网酒店
 
 
0% (0)
 
 
0% (0)
机长评论( ) 请自觉遵守互联网相关的富民政策法规,不准发布色情、暴力、反动的议论。
地名: 匿名?

    1. 
         
          &lt;menuitem id="237d8ab0"&gt;&lt;/menuitem&gt;