1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
<!DOCTYPE HTML> < html >
< body >
< canvas id = "myCanvas" width = "400" height = "400" style = "border:1px solid" ></ canvas >
< script type = "text/javascript" >
// get the canvas
var myCanvas = document.getElementById("myCanvas");
var ctx = myCanvas.getContext("2d");
function showClock(){
ctx.save();
ctx.save();
ctx.save();
ctx.save();
ctx.save();
ctx.save();
ctx.save();
ctx.clearRect(0,0,400,400);
// create the clock border
ctx.restore();
ctx.beginPath();
ctx.strokeStyle="pink";
ctx.lineWidth=10;
ctx.arc(200,200,150,0,Math.PI*2,true);
ctx.stroke();
// create the hour icon
ctx.restore();
ctx.lineWidth=8;
ctx.strokeStyle="blue";
ctx.translate(200,200);
for(var i=0;i< 12 ;i++){
ctx.beginPath();
ctx.moveTo(135,0);
ctx.lineTo(150,0);
ctx.rotate(Math.PI/6);
ctx.stroke();
}
// create the minute icon
ctx.restore();
ctx.lineWidth = 4 ;
ctx.strokeStyle = "blue" ;
ctx.translate(200,200);
for(var i = 0 ;i<60;i++){
ctx.beginPath();
ctx.moveTo(145,0);
ctx.lineTo(150,0);
ctx.rotate(Math.PI/30);
ctx.stroke();
}
var date = new Date();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
hour = hour>=12?hour-12:hour;
// create the hour hand
ctx.restore();
ctx.lineWidth = 14;
ctx.strokeStyle="pink";
ctx.translate(200,200);
ctx.rotate(hour*(Math.PI/6) + (Math.PI/360)*minute + (Math.PI/21600)*second-Math.PI/2);
ctx.beginPath();
ctx.moveTo(-20,0);
ctx.lineTo(90,0);
ctx.stroke();
// create the minute hand
ctx.restore();
ctx.lineWidth = 10;
ctx.strokeStyle="pink";
ctx.translate(200,200);
ctx.rotate((Math.PI/30)*minute + (Math.PI/1800)*second-Math.PI/2);
ctx.beginPath();
ctx.moveTo(-30,0);
ctx.lineTo(125,0);
ctx.stroke();
// create the second hand
ctx.restore();
ctx.lineWidth = 4;
ctx.strokeStyle="pink";
ctx.translate(200,200);
ctx.rotate( (Math.PI/30)*second-Math.PI/2);
ctx.beginPath();
ctx.moveTo(-35,0);
ctx.lineTo(135,0);
ctx.stroke();
ctx.restore();
setTimeout(showClock,1000);
}
showClock(); </ script >
</ body >
</ html >
|
html5canvas畫時鐘
本文轉自 antlove 51CTO部落格,原文連結:http://blog.51cto.com/antlove/1663239
相關文章
- 系統時鐘與硬體時鐘
- 實時時鐘、系統時鐘和主機伺服器時鐘的區別伺服器
- Linux 系統時鐘和硬體時鐘Linux
- CSS動畫篇之炫酷時鐘之時鐘牆CSS動畫
- 硬體時鐘與系統時鐘同步問題
- 《HTML5canvas開發詳解(第2版)》——1.9 HTML5Canvas物件HTMLCanvas物件
- 遊戲5分鐘,上頭2小時!畫風可愛的音樂遊戲《Like A Giraffe!》遊戲
- 時鐘——CSS 動畫CSS動畫
- NTP時鐘同步
- solaris同步時鐘
- 網頁時鐘網頁
- js年月日小時分鐘秒動態時鐘效果JS
- Linux 硬體時鐘和系統時鐘 - hwclock介紹Linux
- Linux時鐘精度Linux
- 純JavaScript時鐘 (轉)JavaScript
- 運動的時鐘
- 簡黑時鐘AClock 2.3 Mac (Mac自定義全屏時鐘軟體)Mac
- Qt時鐘介面、數字時鐘(12小時制24小時制切換、修改系統時間)QT
- 提高HTML5Canvas效能的技巧HTMLCanvas
- 漫畫:三分鐘瞭解敏捷開發敏捷
- 【實時時鐘RTC】MSP430系統實時時鐘RTC學習日誌(完善中)
- canvas圓形時鐘效果Canvas
- 向量時鐘演算法演算法
- canvas動態時鐘效果Canvas
- 數字時鐘DigClockGC
- 安卓之旅-時鐘開發安卓
- STM32時鐘配置
- 藍寶石時鐘與原子鐘有何區別
- html5canvas全屏煙花動畫特效HTMLCanvas動畫特效
- GPS北斗時鐘伺服器(衛星時鐘系統)讓高考時間更加精準伺服器
- 創造 “魔術時刻” —— Android 8.0 畫中畫Android
- 關於時鐘的設定 hwcolck ,主要解決系統時鐘和硬體時鐘不一致的問題(轉)
- 「分散式技術專題」時鐘系列一:事件的因果和邏輯時鐘分散式事件
- C51-------時鐘程式(C語言編寫的微控制器時鐘)C語言
- 分散式系統:向量時鐘分散式
- CSS 繪製一個時鐘CSS
- 世界時鐘:World Clock Deluxe macUXMac
- JavaScript 動態數字時鐘JavaScript