前言:
眼前你们对“js制作动态时钟特效教程”大体比较关心,你们都想要学习一些“js制作动态时钟特效教程”的相关知识。那么小编也在网摘上搜集了一些有关“js制作动态时钟特效教程””的相关资讯,希望你们能喜欢,兄弟们快快来了解一下吧!<canvas id="myCan" width="400" height="500"></canvas>
//1.把一个圆分成60等份(for循环 60个刻度)
//2.空白圆(遮住中间的线)
//3.再画一个圆(时刻度 width=3)
//4.空白圆(遮住线)
//5.获取当前时间,每次旋转相应的刻度
//6.定时器,每秒都在变化
//间隔1秒钟执行一次setInterval(canvas,1000);function canvas(){ var oDate=new Date(); var oHour=oDate.getHours(); var oMin=oDate.getMinutes(); var oSec=oDate.getSeconds(); var oHourValue=(-90+oHour*30)*Math.PI/180; var oMinValue=(-90+oMin*6)*Math.PI/180; var oSecValue=(-90+oSec*6)*Math.PI/180; //获取canvas元素,并设置舞台 var og=document.getElementById('myCan'); var ogc=og.getContext('2d'); //画一个大圆 ogc.beginPath(); for(var i=0;i<60;i++){ ogc.moveTo(200,200); ogc.arc(200,200,150,6*i*Math.PI/180,6*(i+1)*Math.PI/180,false); } ogc.stroke(); ogc.closePath(); //画空白圆 ogc.beginPath(); ogc.fillStyle="#fff"; ogc.moveTo(200,200); ogc.arc(200,200,150*19/20,0,360*Math.PI/180,false); ogc.fill(); ogc.closePath(); //分针刻度 ogc.beginPath(); ogc.lineWidth=3; for(var j=0;j<12;j++){ ogc.moveTo(200,200); ogc.arc(200,200,150,30*j*Math.PI/180,30*(j+1)*Math.PI/180,false); } ogc.stroke(); ogc.closePath(); //画空白圆 ogc.beginPath(); ogc.fillStyle="#fff"; ogc.moveTo(200,200); ogc.arc(200,200,150*18/20,0,360*Math.PI/180,false); ogc.fill(); ogc.closePath(); //时 ogc.beginPath(); ogc.lineWidth=5; ogc.moveTo(200,200); ogc.fillStyle="#fff"; ogc.arc(200,200,150*10/20,oHourValue,oHourValue,false); ogc.stroke(); ogc.closePath(); //分 ogc.beginPath(); ogc.lineWidth=3; ogc.moveTo(200,200); ogc.fillStyle="#fff"; ogc.arc(200,200,150*13/20,oMinValue,oMinValue,false); ogc.stroke(); ogc.closePath(); //秒 ogc.beginPath(); ogc.lineWidth=1; ogc.moveTo(200,200); ogc.fillStyle="#fff"; ogc.arc(200,200,150*17/20,oSecValue,oSecValue,false); ogc.stroke(); ogc.closePath(); ogc.save();}
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #js制作动态时钟特效教程