使用canvas绘制超炫时钟 时间:2016.04.25 发布人:va**sk 已解决问题谷歌va**sk用户在2016.04.25提交了关于“末日蟑螂使用canvas绘制超炫时钟”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-10-29T17:51:02。希望大家能够帮助她。 详细问题描述及疑问:期待您的答案,滴水之恩,来日我当涌泉相报 ! 希望以下的回答,能够帮助你。第1个回答 用户名:cwz苹果 时间:2016如.04.25 先上效果图:代码如下:<!府引鱼铁尽学细DOCTYPEhtm探卫编训众田采离l><html><head><metacharset="utf-8"><title>canvas钟表</title><metaname="Keywords"content=""><m明使述香etaname="author"content="@my_programmer"><styletype="text/css">body{margin:0;}</style></head><bodyonload="run()"><c问答anvasid="ca如争万染nvas"width=40超磁定0height=黄400style="bord试自觉急些er:1px#cccsol如案儿刻赵id;">如果你看到这段文完王华客刚据医错文字,说明你的浏览器弱爆了!</canvas><scr间验ipt>window.onload=draw;functiondraw(){varcanvas=document.getElementById('canvas');varcontext=canvas.getContext('2d');***.s**e();///////////////////////////////////保存context.translate(200,200);vardeg任七它厂茶服维类径=2*Math.PI/12;///////////德//////////////////////////////////////举赵杨措略/表盘***.s**e();context.begi西衡nPath();for觉争简(vari=0;i<13;i++){varx=Math.sin(i*deg);vary=-Math.cos(i*deg);context.lineTo(x*150,y*150);}varc=context.createRadialGradient(0,0,0,0,0,130);c.addColorStop(0,"#22f");c.addColorStop(1,"#0ef")context.fillStyle=c;context.fill();context.closePath();context.restore();//////////////////////////////////////////////////数字***.s**e();context.beginPath();for(vari=1;i<13;i++){varx1=Math.sin(i*deg);vary1=-Math.cos(i*deg);context.fillStyle="#fff";context.font="bold20pxCalibri";context.textAlign='center';context.textBaseline='middle';context.fillText(i,x1*120,y1*120);}context.closePath();context.restore();//////////////////////////////////////////////////大刻度***.s**e();context.beginPath();for(vari=0;i<12;i++){varx2=Math.sin(i*deg);vary2=-Math.cos(i*deg);context.moveTo(x2*148,y2*148);context.lineTo(x2*135,y2*135);}context.strokeStyle='#fff';context.lineWidth=4;context.stroke();context.closePath();context.restore();//////////////////////////////////////////////////小刻度***.s**e();vardeg1=2*Math.PI/60;context.beginPath();for(vari=0;i<60;i++){varx2=Math.sin(i*deg1);vary2=-Math.cos(i*deg1);context.moveTo(x2*146,y2*146);context.lineTo(x2*140,y2*140);}context.strokeStyle='#fff';context.lineWidth=2;context.stroke();context.closePath();context.restore();///////////////////////////////////////////////////文字***.s**e();context.strokeStyle="#fff";context.font='34pxsans-serif';context.textAlign='center';context.textBaseline='middle';context.strokeText('canvas',0,65);context.restore();/////////////////////////////////////////////////newDatevartime=newDate();varh=(time.geth**ours()%12)*2*Math.PI/12;varm=time.getMi**tes()*2*Math.PI/60;vars=time.getSeconds()*2*Math.PI/60;</p><p>////////////////////////////////////////////////时针***.s**e();context.rotate(h+m/12+s/720);context.beginPath();context.moveTo(0,6);context.lineTo(0,-85);context.strokeStyle="#fff";context.lineWidth=6;context.stroke();context.closePath();context.restore();//////////////////////////////////////////////分针***.s**e();context.rotate(m+s/60);context.beginPath();context.moveTo(0,8);context.lineTo(0,-105);context.strokeStyle="#fff";context.lineWidth=4;context.stroke();context.closePath();context.restore();/////////////////////////////////////////////秒针***.s**e();context.rotate(s);context.beginPath();context.moveTo(0,10);context.lineTo(0,-120);context.strokeStyle="#fff";context.lineWidth=2;context.stroke();context.closePath();context.restore();context.restore();/////////////////////////////栈出setTimeout(draw,1000);/////////////////////////////计时器</p><p>}</p><p></script></body></html>