首頁 >web前端 >H5教程 >使用純HTML5編寫一款網頁上的時脈的程式碼分享_html5教學技巧

使用純HTML5編寫一款網頁上的時脈的程式碼分享_html5教學技巧

WBOY
WBOY原創
2016-05-16 15:46:231920瀏覽

你需要知道的:

canvas標籤只是圖形容器,您必須使用腳本來繪製圖形。預設大小:寬300px,高150px;

getContext() 方法可傳回一個對象,該物件提供了用於在畫布上繪圖的方法和屬性。 ——取得上下文物件。
getContext("2d") 物件屬性和方法,可用於在畫布上繪製文字、線條、矩形、圓形等等。

fillRect(l,t,w,h):預設顏色是黑色 strokeRect(l,t,w,h):有邊框的方塊。預設一像素黑色邊框

setInterval() 方法可依照指定的周期(以毫秒計)來呼叫函數或計算表達式。

beginPath():定義開始繪製路徑, 它把目前的點設定為 (0,0)。 當一個畫布的環境第一次創建,beginPath()
方法會被明確地呼叫。
closePath():結束繪製路徑(將起點與終點進行連接)


 繪製圓形:
arc( x,y,半徑,起始弧度,結束弧度,旋轉方向)
x,y:起始位置
弧度與角度的關係:弧度=角度*Math.PI/180
旋轉方向:順時針(預設:false,逆時針:true)

代碼:

XML/HTML Code複製內容到剪貼簿
  1. HTML>  
  2. html lang=lang=lang
  3. =
  4. lang=>  
  5. >            
  6.  字元 字元8">           
  7. 標題>>            
  8. 腳本> 🎜>> 🎜>
  9. >
  10.                   window.onload = 函數
  11. (){   
  12.                         var                          var 
  13.   
  14.                            drawClock(){   
  15.                                00;   //指定座標                                   00;   
  16.                                0;  //指定鐘錶半徑      
  17.                                 oGC.clearRect(0,0,oC.width,oC.height);//清空透明度   
  18.   
  19.                                新
  20.  Date();      //建立資料物件   
  21.                                oDate.getHours();//取得時間                                   >oDate.getMinutes();   
  22.                                >oDate.getSeconds();      
  23.                             urs*30   oMin/2)*Math.PI/180; //設定時針的值   
  24.                             in*6)*Math.PI/180;                                en*6)*Math.PI/180;   
  25.   
  26.                                
  27.                                   🎜>;i
  28. 60;i ){         //i為60,且代表時鐘的60個小刻度  
  29.                                                                 )*Math.PI/180,false); //循環從6度到12度                                   }  
  30.                                
  31.                                
  32.   
  33.                                'white'
  34. ; //覆蓋住小刻度的黑色線  
  35.                                                                                                  
  36.   
  37.                                
  38.                                
  39.   
  40.                                🎜>3
  41. ; //設定時鐘圓盤大刻度的粗細值  
  42.                                
  43.   
  44.                             
  45. ;i
  46. 12;i ){              //i為12,且為時鐘刻度的12大格                                                                  1)*Math.PI/180,false); // 間隔為30度,弧度=角度*Math.PI/180   
  47.                                 }  
  48.                                
  49.                                
  50.   
  51.                                'white'
  52. ; //覆蓋大刻度的黑色線  
  53.                                                                                                 
  54.   
  55.                                
  56.                                
  57.   
  58.                                >5
  59. ;//設定時針寬度   
  60.                                
  61.                                
  62.   
  63.                              下  
  64.                                                                                                   >3
  65. ;//設定分針寬度   
  66.                             
  67.                                
  68.   
  69.                                 
  70.                                
  71.                                
  72.   
  73.                                >1
  74. ;//設定秒針寬度   
  75.                                                                                                  上 oGC.arc(x.
  76.                                
  77.                                
  78.                         }   
  79.                         setInterval(drawClock,1000);//設定定時器,並讓時鐘與時鐘設定
  80.                                
  81.                 };   
  82.         script> 🎜>>
  83.  🎜>>  head
  84. >
  85.    body
  86. >
  87.            canvas  width = "400px" "400px" "400px" >"400px">canvas> 
  88. body>  
  89. html>  
點選下方result查看示範:
http://jsfiddle.net/eh02450b/2/
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn