欧美日韩一区二区三区四区不卡,日韩欧美视频一区二区三区四区,久久精品欧美一区二区三区不卡,国产精品久久久乱弄

咨詢電話:186 7916 6165 咨詢電話:186 7916 6165 (微信同號)    在線QQ:181796286
NEWS BLOG ·
學無止境
關注開優網絡 關注前沿
CSS中正確設置微軟雅黑等字體的方法
利用@media screen實現網頁布局的自適應

Canvas制作圓形進度條Loading效果

發表日期:2016-05-03    文章編輯:南昌開優網絡    瀏覽次數:4712    標簽:HTML5

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Canvas制作圓形進度條Loading效果 - 【開優網絡】</title>
<style>
/*框架預覽 CSS*/
* { margin: 0; padding: 0; }
body { text-align: center; background-color: #000; }
/*End*/
</style>
</head>
<body>
<!--效果html開始-->
<canvas id="canvas" width="300" height="500" style="background:#000;"></canvas>
<script>
    window.onload = function(){
        var canvas = document.getElementById('canvas'),  //獲取canvas元素
            context = canvas.getContext('2d'),  //獲取畫圖環境,指明為2d
            centerX = canvas.width/2,   //Canvas中心點x軸坐標
            centerY = canvas.height/2,  //Canvas中心點y軸坐標
            rad = Math.PI*2/100, //將360度分成100份,那么每一份就是rad度
            speed = 0.1; //加載的快慢就靠它了 
        //繪制藍色外圈
        function blueCircle(n){
            context.save();
            context.strokeStyle = "#fff"; //設置描邊樣式
            context.lineWidth = 5; //設置線寬
            context.beginPath(); //路徑開始
            context.arc(centerX, centerY, 100 , -Math.PI/2, -Math.PI/2 +n*rad, false); //用于繪制圓弧context.arc(x坐標,y坐標,半徑,起始角度,終止角度,順時針/逆時針)
            context.stroke(); //繪制
            context.closePath(); //路徑結束
            context.restore();
        }
        //繪制白色外圈
        function whiteCircle(){
            context.save();
            context.beginPath();
            context.strokeStyle = "white";
            context.arc(centerX, centerY, 100 , 0, Math.PI*2, false);
            context.stroke();
            context.closePath();
            context.restore();
        }  
        //百分比文字繪制
        function text(n){
            context.save(); //save和restore可以保證樣式屬性只運用于該段canvas元素
            context.strokeStyle = "#fff"; //設置描邊樣式
            context.font = "40px Arial"; //設置字體大小和字體
            //繪制字體,并且指定位置
            context.strokeText(n.toFixed(0)+"%", centerX-25, centerY+10);
            context.stroke(); //執行繪制
            context.restore();
        } 
        //動畫循環
        (function drawFrame(){
            window.requestAnimationFrame(drawFrame, canvas);
            context.clearRect(0, 0, canvas.width, canvas.height);
            whiteCircle();
            text(speed);
            blueCircle(speed);
            if(speed > 100) speed = 0;
            speed += 0.1;
        }());
    }
</script>
<!--效果html結束-->
</div>
</body>
</html>
主站蜘蛛池模板: 桐柏县| 和林格尔县| 衡东县| 新河县| 孟州市| 民勤县| 铁岭县| 临邑县| 合川市| 深水埗区| 台中县| 贵溪市| 白河县| 惠水县| 兰考县| 大足县| 酉阳| 广灵县| 交口县| 大英县| 安庆市| 吉木乃县| 咸宁市| 黑山县| 渝北区| 邯郸县| 荆州市| 萨嘎县| 如皋市| 荔浦县| 察哈| 金寨县| 远安县| 涿鹿县| 姜堰市| 汝城县| 正定县| 漳平市| 广昌县| 元阳县| 宜州市|