最新的Web開發教程
 

Canvas Clock


在這些章節中,我們將建立使用HTML畫布模擬時鐘。


第一部分 - 創建畫布

時鐘需要一個HTML容器。 創建一個300×300像素的HTML畫布:

HTML代碼:

<!DOCTYPE html>
<html>
<body>

<canvas id="canvas" width="300" height="300" style="background-color:#333"></canvas>

<script>
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var radius = canvas.height / 2;
ctx.translate(radius, radius);
radius = radius * 0.90
drawClock();

function drawClock() {
    ctx.arc(0, 0, radius, 0 , 2*Math.PI);
    ctx.fillStyle = "white";
    ctx.fill();
}
</script>

</body>
</html>
試一試»

代碼解釋

一個HTML <canvas>元素添加到您的網頁:

<canvas id="canvas" width="300" height="300" style="background-color:#333"></canvas>

創建的HTML畫布元素的畫布對象(VAR帆布):

var canvas = document.getElementById("canvas");

創建畫布對象的2D繪圖對象(VAR CTX):

var ctx = canvas.getContext("2d");

計算時鐘半徑,使用該帆布的高度:

var radius = canvas.height / 2;

使用Canvas的高度來計算時鐘半徑,使得所有的畫布大小的時鐘工作。

重新映射(的圖形對象)的(0,0)位置的畫布的中心:

ctx.translate(radius, radius);

降低時鐘半徑(90%)來繪製時鐘以及畫布裡面:

radius = radius * 0.90;

創建一個函數來繪製時鐘:

function drawClock() {
    ctx.arc(0, 0, radius, 0 , 2*Math.PI);
    ctx.fillStyle = "white";
    ctx.fill();
}