国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

介紹一個用HTML5 Canvas 制作的時鐘

2020-03-24 16:02:26
字體:
來源:轉載
供稿:網友

用HTML5 Canvas 制作的時鐘,看著挺簡單的,但其中寫起來還是有很多小的問題的,感興趣的小伙伴們可以參考一下

代碼如下:

 !DOCTYPE html  html lang= en  head  meta charset= utf-8 /  title HTML5 時鐘 /title  link href= css/main.css rel= stylesheet type= text/css /  script src= http://code.jquery.com/jquery-latest.min.js /script  style  .clocks { height: 500px; margin: 25px auto; position: relative; width: 500px; /style  /head  body  header  h2 HTML5 時鐘 /h2  /header  p >[JavaScript]代碼
// inner variablesvar canvas, ctx;var clockRadius = 250;var clockImage;// draw functions :function clear() { // clear canvas function ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);function drawScene() { // main drawScene function clear(); // clear canvas // get current time var date = new Date(); var hours = date.getHours(); var minutes = date.getMinutes(); var seconds = date.getSeconds(); hours = hours 12 ? hours - 12 : hours; var hour = hours + minutes / 60; var minute = minutes + seconds / 60; // save current context ctx.save(); // draw clock image (as background) ctx.drawImage(clockImage, 0, 0, 500, 500); ctx.translate(canvas.width / 2, canvas.height / 2); ctx.beginPath(); // draw numbers ctx.font = 36px Arial  ctx.fillStyle = #000  ctx.textAlign = center  ctx.textBaseline = middle  for (var n = 1; n = 12; n++) { var theta = (n - 3) * (Math.PI * 2) / 12; var x = clockRadius * 0.7 * Math.cos(theta); var y = clockRadius * 0.7 * Math.sin(theta); ctx.fillText(n, x, y); // draw hour ctx.save(); var theta = (hour - 3) * 2 * Math.PI / 12; ctx.rotate(theta); ctx.beginPath(); ctx.moveTo(-15, -5); ctx.lineTo(-15, 5); ctx.lineTo(clockRadius * 0.5, 1); ctx.lineTo(clockRadius * 0.5, -1); ctx.fill(); ctx.restore(); // draw minute ctx.save(); var theta = (minute - 15) * 2 * Math.PI / 60; ctx.rotate(theta); ctx.beginPath(); ctx.moveTo(-15, -4); ctx.lineTo(-15, 4); ctx.lineTo(clockRadius * 0.8, 1); ctx.lineTo(clockRadius * 0.8, -1); ctx.fill(); ctx.restore(); // draw second ctx.save(); var theta = (seconds - 15) * 2 * Math.PI / 60; ctx.rotate(theta); ctx.beginPath(); ctx.moveTo(-15, -3); ctx.lineTo(-15, 3); ctx.lineTo(clockRadius * 0.9, 1); ctx.lineTo(clockRadius * 0.9, -1); ctx.fillStyle = #0f0  ctx.fill(); ctx.restore(); ctx.restore();// initialization$(function(){ canvas = document.getElementById( canvas  ctx = canvas.getContext( 2d  // var width = canvas.width; // var height = canvas.height;clockImage = new Image();clockImage.src = http://static.oschina.net/uploads/space/2012/0712/125855_nnla_89964.png  setInterval(drawScene, 1000); // loop drawScene});

以上就是介紹一個用HTML5 Canvas 制作的時鐘的詳細內容,其它編程語言

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阜平县| 洛隆县| 满城县| 临桂县| 成都市| 敦煌市| 大邑县| 阿尔山市| 丹寨县| 垦利县| 那曲县| 沂源县| 平原县| 乡城县| 南汇区| 榆树市| 镇原县| 改则县| 枞阳县| 乳山市| 临朐县| 普定县| 灵寿县| 沧源| 长顺县| 嘉义市| 镇赉县| 五莲县| 唐河县| 章丘市| 贵港市| 秦安县| 宣武区| 东港市| 木兰县| 贡山| 阿城市| 中阳县| 维西| 大荔县| 沧州市|