900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > JS+Canvas绘制时钟效果

JS+Canvas绘制时钟效果

时间:2021-09-21 15:50:23

相关推荐

JS+Canvas绘制时钟效果

web前端|js教程

js Canvas 时钟

web前端-js教程

本文实例为大家分享了使用canvas绘制时钟的具体代码,供大家参考,具体内容如下

网页源码下视频,ubuntu系统 分区方案,tomcat是数据库吗,慈溪卖爬虫店,php代码弹窗口怎么弄,seo520520lzw

1. clock.html

免费微商城系统源码,vscode 图片背景,ubuntu系统安装qq,tomcat 卡在log,sqlite更改列名,韩国100m服务器,手机视频插件v,asp前端开发框架,c语言实现网络爬虫,php占座,seo排名怎么做,主播直播间网站模板,贪吃蛇代码网页,企业的网页页面模板,asp生成静态页面工具,web酒店管理系统毕业论文,网站程序组成lzw

canvas时钟var canvas=document.getElementById("canvas"); var context=canvas.getContext(2d); //draw(); function draw(){//得到当前系统的时分秒var now=new Date();var sec=now.getSeconds();var min=now.getMinutes();var hour=now.getHours();hour>=12&&(hour=hour-12);var radius = Math.min(canvas.width/2,canvas.height/2);//初始化画布context.save();context.clearRect(0,0,canvas.width,canvas.height); context.translate(canvas.width/2,canvas.height/2); context.rotate(-Math.PI/2);context.save();//表框//小时刻度context.strokeStyle="black";context.fillStyle="black";context.lineWidth=3;context.lineCap="round";context.beginPath();for(var i=0;i<12;i++){ context.rotate(Math.PI/6); context.moveTo(radius-30,0); context.lineTo(radius-10,0); }context.stroke();context.restore();context.save(); //分钟刻度context.lineWidth=2;context.beginPath();for(var i=0;i<60;i++){ if(!i%5==0){ context.moveTo(radius-15,0); context.lineTo(radius-10,0); } context.rotate(Math.PI/30);}context.stroke();context.restore();context.save(); //画上时针 context.rotate((Math.PI/6)*hour+(Math.PI/360)*min+(Math.PI/21600)*sec); context.lineWidth=6; context.beginPath(); context.moveTo(-10,0); context.lineTo(radius*0.5,0); context.stroke();context.restore();context.save(); context.rotate((Math.PI/30)*min+(Math.PI/1800)*sec); context.strokeStyle="#29A8DE"; context.lineWidth=4; context.lineCap="butt"; context.beginPath(); context.moveTo(-20,0); context.lineTo(radius*0.7,0); context.stroke(); context.restore(); context.save();context.rotate(sec*Math.PI/30); context.strokeStyle="red"; context.lineWidth=2; context.lineCap="butt"; context.beginPath(); context.moveTo(-30,0); context.lineTo(radius*0.9,0); context.stroke(); context.restore(); context.save(); context.lineWidth=4; context.strokeStyle="gray";context.beginPath(); context.arc(0,0,radius,0,Math.PI*2,true);context.stroke();context.restore(); context.restore(); }window.onload=function(){setInterval(draw,1000) }

2. JavaScript代码

虚拟资源网源码,ubuntu切换英文输入,爬虫框架怎么选,php stronger,东莞必应seolzw

var canvas=document.getElementById("canvas"); var context=canvas.getContext(2d); //draw(); function draw(){//得到当前系统的时分秒var now=new Date();var sec=now.getSeconds();var min=now.getMinutes();var hour=now.getHours();hour>=12&&(hour=hour-12);var radius = Math.min(canvas.width/2,canvas.height/2);//初始化画布context.save();context.clearRect(0,0,canvas.width,canvas.height); context.translate(canvas.width/2,canvas.height/2); context.rotate(-Math.PI/2);context.save();//表框//小时刻度context.strokeStyle="black";context.fillStyle="black";context.lineWidth=3;context.lineCap="round";context.beginPath();for(var i=0;i<12;i++){ context.rotate(Math.PI/6); context.moveTo(radius-30,0); context.lineTo(radius-10,0); }context.stroke();context.restore();context.save(); //分钟刻度context.lineWidth=2;context.beginPath();for(var i=0;i<60;i++){ if(!i%5==0){ context.moveTo(radius-15,0); context.lineTo(radius-10,0); } context.rotate(Math.PI/30);}context.stroke();context.restore();context.save(); //画上时针 context.rotate((Math.PI/6)*hour+(Math.PI/360)*min+(Math.PI/21600)*sec); context.lineWidth=6; context.beginPath(); context.moveTo(-10,0); context.lineTo(radius*0.5,0); context.stroke();context.restore();context.save(); context.rotate((Math.PI/30)*min+(Math.PI/1800)*sec); context.strokeStyle="#29A8DE"; context.lineWidth=4; context.lineCap="butt"; context.beginPath(); context.moveTo(-20,0); context.lineTo(radius*0.7,0); context.stroke(); context.restore(); context.save();context.rotate(sec*Math.PI/30); context.strokeStyle="red"; context.lineWidth=2; context.lineCap="butt"; context.beginPath(); context.moveTo(-30,0); context.lineTo(radius*0.9,0); context.stroke(); context.restore(); context.save(); context.lineWidth=4; context.strokeStyle="gray";context.beginPath(); context.arc(0,0,radius,0,Math.PI*2,true);context.stroke();context.restore(); context.restore(); }window.onload=function(){setInterval(draw,1000) }

更多JS+Canvas绘制时钟效果相关文章请关注PHP中文网!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。