首页 > 代码库 > canvas 钟表
canvas 钟表
<canvas id="can" height="300px" style="border: 1px solid black"></canvas> var can = document.getElementById("can") if(can.getContext){ var ctx = can.getContext("2d"); function draw(){ var date = new Date(); ctx.clearRect(0,0,300,300); ctx.save(); //需要还原,因为translate会相对上一次进行移动 ctx.translate(150, 150); ctx.lineWidth = 8; ctx.lineCap = "round"; ctx.save(); //画时针刻度 for(var i = 0; i < 12; i++){ ctx.rotate(Math.PI/6); ctx.beginPath(); ctx.moveTo(115,0); ctx.lineTo(90,0); ctx.stroke(); } ctx.restore(); //画秒针刻度 ctx.save(); for(var i = 0; i < 60; i++){ ctx.rotate(Math.PI/30); ctx.beginPath(); //ctx.moveTo(115,0); ctx.arc(115, 0, 3, 0, Math.PI * 2); ctx.fill(); } ctx.restore(); //获取时间 var hour = date.getHours(); var min = date.getMinutes(); var sec = date.getSeconds(); //画时针 ctx.save(); ctx.rotate(hour*(Math.PI/6)); ctx.beginPath(); ctx.moveTo(0,5); ctx.lineTo(0,-50); ctx.stroke(); ctx.restore(); //画分针 ctx.save(); ctx.lineWidth = 7; ctx.rotate((Math.PI*2)*min/60); ctx.beginPath(); ctx.moveTo(0,5); ctx.lineTo(0,-70); ctx.stroke(); ctx.restore(); //画秒针 ctx.save(); ctx.strokeStyle = "red"; ctx.lineWidth = 4; ctx.rotate((Math.PI/30)*sec); ctx.beginPath(); ctx.moveTo(0,5); ctx.lineTo(0,4); ctx.stroke(); ctx.beginPath(); ctx.arc(0, 0, 4, 0, Math.PI * 2); ctx.fill(); ctx.beginPath(); ctx.moveTo(0,-4); ctx.lineTo(0,-70); ctx.stroke(); ctx.beginPath(); ctx.arc(0, -75, 5, 0, Math.PI * 2); ctx.stroke(); ctx.restore(); //画圆盘 ctx.strokeStyle = "#126686"; ctx.beginPath(); //ctx.moveTo(135,0); ctx.arc(0, 0, 135, 0, Math.PI * 2); ctx.stroke(); ctx.restore(); window.requestAnimationFrame(draw); } window.requestAnimationFrame(draw); }else{ alert("not suopport"); }
canvas 钟表
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。