Js用Canvas实现简单时钟
来源:互联网 发布:贪玩游戏 知乎 编辑:程序博客网 时间:2024/06/14 09:22
才开始学习canvas,利用canvas的实现了简单的时钟。效果图如下:
思路如下:
利用setInterval()
注册每隔1秒触发的画钟事件。drawClock()
流程图如下:
源代码如下:
<!DOCTYPE html><html><head><title>clock</title><style type="text/css"> canvas { position: absolute; margin: -100px; top: 50%; left: 50%; }</style></head><body><canvas id="clock" width="200px" height="200px">This is a clock</canvas><script type="text/javascript">//clockvar drawing = document.querySelector('#clock');var context = drawing.getContext('2d');var drawClock = function () { var time = new Date(); var second = time.getSeconds(); var minute = time.getMinutes(); var hour = time.getHours(); var secondhandAngle = second * Math.PI / 30; var minutehandAngle = minute * Math.PI / 30; var hourhandAngle = hour * Math.PI / 12; //clear canvas context.clearRect(0, 0, 200, 200); //begin draw context.beginPath(); //draw panel context.arc(100, 100, 100, 99, 0, 2 * Math.PI, false); context.moveTo(194, 100); context.arc(100, 100, 94, 0, 2 * Math.PI, false); //draw text context.font = "bold 14px Consolar"; context.textAlign = 'center'; context.textBaseline = 'middle'; context.fillText('12', 100, 20); context.fillText('3', 180, 100); context.fillText('6', 100, 180); context.fillText('9', 20, 100); //draw second hand context.moveTo(100, 100); context.lineTo(100 + 80 * Math.sin(secondhandAngle), 100 - 80 * Math.cos(secondhandAngle)); //draw minute hand context.moveTo(100, 100); context.lineTo(100 + 65 * Math.sin(minutehandAngle), 100 - 65 * Math.cos(minutehandAngle)); //draw hour hand context.moveTo(100, 100); context.lineTo(100 + 50 * Math.sin(hourhandAngle), 100 - 50 * Math.cos(hourhandAngle)); //complete draw context.stroke();};setInterval(drawClock, 1000);</script></body></html>
阅读全文
0 0
- Js用Canvas实现简单时钟
- 简单 --> js+canvas 时钟
- js实现简单的时钟
- android 用canvas 绘制简单圆形时钟
- js+canvas实现简单绘图
- 用HTML5 Canvas 实现的 时钟
- canvas实现时钟效果
- Canvas 实现时钟
- canvas实现动态时钟
- (难度:13%)js里面的canvas实现时钟
- 1.使用canvas实现一个简单的时钟
- 【JS每日练习】简单时钟的实现
- CSS+JS实现简单的时钟
- canvas制作时钟js代码
- HTML5 Canvas 练习(简单时钟)
- js+canvas实现简单的五子棋游戏
- js canvas 实现简单的加载条
- 用js实现一个时钟
- SAP——102和122和161区别
- Android Studio打开出现Unknown run configuration type AndroidRunConfigurationType
- 关于combox记录登录信息
- Java和Scala学习日记4
- jquery validate required 无法验证空问题
- Js用Canvas实现简单时钟
- python初步实现word2vec
- 腾讯前端十天小白训练营<DAY 3>---css常用属性及行内&块级元素
- 面向对象的编程---创建对象
- MTK 7.0 下拉状态栏左上角添加运营商显示
- 云计算全球首推峰谷价,为企业节约49%成本
- axios全攻略
- (转载)mysql 启动错误(InnoDB: Operating system error number 13 )
- Linux环境下配置java