Skip to content
Go back

circle-progress-bar

利用canvas绘制圆环进度条的插件, 仓库地址👉 https://github.com/aswind7/circle-progress-bar/tree/master

介绍

circle-progress-bar.js 是一款利用canvas绘制圆环进度条的插件,不依赖任何库。

用法

基础用法

git clone 此仓库,然后在html中引用 lib文件夹中的index.js即可。

<style>
	#my-canvas {
		/*利用css控制canvas元素的宽高,解决canvas本身的失真问题*/
		width: 20px; 
	}
</style>
<canvas id="my-canvas" > 
</canvas>
<script src="./circle-progress-bar.js">
</script>
<script>
	var myCanvas = document.querySelector('#my-canvas');
	var c1 = new CircleProgressBar({
		canvasDom: myCanvas
	});
</script>

CommonJS用法

⚠️Tips: ----请注意: npm 包名是mini-circle-progress-bar 而非 circle-progress-bar!!

npm i mini-circle-progress-bar

ES Module:

import Bar from 'mini-circle-progress-bar'
var c1 = new Bar({
	canvasDom: myCanvas
});

CommonJS :

var Bar = require 'mini-circle-progress-bar'
var c1 = new Bar({
	canvasDom: myCanvas
});

参数配置

{
	canvasDom: CanvasDomNeedToSet, 		   // 必填的canvas dom 
	// 以下的数值为默认参数值
	r: 30,				           // 内圆半径
	lineWidth: 5, 				   // border宽度
	lineColor: '#3385ff', 		   	   // border进度条颜色
	lineBgColor: '#eeeeee',        		   // border背景颜色
	angle: Math.PI * 0.5,          		   // 需要转动的角度
	startAngle: -Math.PI * 0.5,    		   // 起始角度
	duration: 1000,				   // 过渡时间, 单位:ms
	text: '',    				   // 圆圈中的文字
	showPercent: true, 			   // 是否显示百分比数值
	textFontSize: 12, 			   // 文字大小 (px)
	textColor: '#3385ff', 		  	   // 文字颜色
	animationMode: 'linear'        		   // 'linear' || 'accelerate' || 'decelerate'  匀速,加速, 减速
}

兼容性

ChromeFirefoxSafariOperaEdgeIE
Latest ✔Latest ✔Latest ✔Latest ✔Latest ✔10+ ✔

FAQ


Share this post on:

Previous Post
算法-斐波那契数列
Next Post
build-your-own-react