JavaScript

超轻量级php框架startmvc

canvas实现简易的圆环进度条效果

更新时间:2020-04-25 21:50:01 作者:startmvc
效果图:代码如下:<!DOCTYPEhtml><html><head><metacharset="UTF-8"><title></titl

效果图:

代码如下:


<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 </head>
 <style type="text/css">
 canvas{
 border: 1px solid #1F232A;
 }
 .div{
 width: 400px;
 height: 50px;
 }
 input,button{
 text-align: center;
 font-size: 20px;
 }
 </style>
 <body>
 <canvas id="main" width="450" height="300"></canvas>
 <div class="div">
 进度:<input id="num" type="number" value="100" max="100"/>
 <button id="makeSure">确定</button>
 </div>
 </body>
 <script type="text/javascript">
 var makeSure=document.getElementById("makeSure");
 makeSure.onclick=function(){
 var ctx=document.getElementById("main").getContext("2d");
 ctx.clearRect(0,0,450,300);
 var num=parseInt(document.getElementById("num").value)+1;
 if(num<=101){
 for (var x=0;x<num;x++) {
 (function(x){
 setTimeout(function(){
 ctx.beginPath()
 ctx.lineWidth=10;
 ctx.strokeStyle='orange';
 ctx.arc(200, 200, 50, -90 * Math.PI / 180, (x * 3.6 - 90) * Math.PI / 180);
 ctx.stroke();
 ctx.clearRect(390,25,50,50);
 ctx.clearRect(175,175,55,55)
 ctx.fillStyle = 'orange';
 ctx.fillRect(10+x*3.5,30,3.5,40);
 ctx.font="20px Arial";
 ctx.fillText(x+"%",390,58)
 ctx.fillText(x+"%",175,208)
 },x*30); 
 })(x);
 }
 }else{
 alert("请输入0-100之间的数字")
 }
 }
 makeSure.click();
 </script>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

canvas 圆环进度条 canvas绘制圆环进度条 canvas实现圆形进度条