以下代码可供参考。

<body>
        <canvas id="mc" width="300px" height="300px"></canvas>
        <script type="text/javascript">
            var canvas=document.getElementById("mc");
            var ctx=canvas.getContext('2d');/*获取画笔*/
            var x=canvas.width/2;
            var y=(canvas.height/2);/*圆心*/
            
            ctx.beginPath();
            ctx.arc(x,y,150,0,2*Math.PI);/*0到360度*/ /*画了一个圆*/
            ctx.stroke();

/*分钟刻度*/
            var angle=(2*Math.PI/60);/*360°/60=6°*/                
            for(var i=0;i<60;i++){/*画60个刻度*/
                var star=i*angle;
                var end=(i+1)*angle;
                ctx.beginPath();/*开始路径*/
                ctx.moveTo(x,y);
                ctx.arc(x,y,150,star,end);
                ctx.stroke();
            }
            
            /*遮罩*/
            ctx.beginPath();
            ctx.strokeStyle='white';
               ctx.arc(x,y,140,0,2*Math.PI);/*0到360度*/ /*画了一个圆*/
               ctx.fillStyle='white';/*背景色为白色*/
               ctx.fill();
            ctx.stroke();
            
            
            /*时钟刻度*/
            var angle=(2*Math.PI/12);/*360/12*/
            for(var i=0;i<12;i++){/*画12个刻度*/
                var star=i*angle;
                var end=(i+1)*angle;
                ctx.beginPath();/*开始路径*/
                ctx.strokeStyle='black';
                ctx.moveTo(x,y);
                ctx.arc(x,y,150,star,end);
                ctx.stroke();
            }
           
             function time1(){
            /*遮罩*/
            ctx.beginPath();
            ctx.strokeStyle='white';
               ctx.arc(x,y,130,0,2*Math.PI);/*0到360度*/ /*画了一个圆*/
               ctx.fillStyle='white';/*背景色为白色*/
               ctx.fill();
            ctx.stroke();
            
            /**/
            
                        
             var date=new Date();
              var h=date.getHours();             
              var m=date.getMinutes();
              var s=date.getSeconds();                       
             if(h>12){
                  h=h-12;
              } 
              console.log(h);
            
            var secondAngle =((s*6-90)*(Math.PI)/180) ;  //计算出来秒针的弧度
            var minuteAngle =((m*6-90)*(Math.PI)/180+(secondAngle/60));  //计算出来分针的弧度
            var hourAngle =((h*30-90)*(Math.PI)/180 +(minuteAngle/12));  //计算出来时针的弧度
              
                        
            /*秒针*/
            ctx.beginPath();
            ctx.strokeStyle='red';           
            ctx.moveTo(x, y);
            ctx.arc(x, y, 120, secondAngle, secondAngle);
            ctx.stroke();
            
            /*分针*/
            ctx.beginPath();
            ctx.strokeStyle='blue';          
            ctx.moveTo(x, y);
            ctx.arc(x, y, 90, minuteAngle, minuteAngle);
            ctx.stroke();
            
            /*时针*/
            ctx.beginPath();
            ctx.strokeStyle='black';          
            ctx.moveTo(x, y);
            ctx.arc(x, y,60, hourAngle, hourAngle);
            ctx.stroke();
            
             //画中心圆点
            ctx.beginPath();
            ctx.strokeStyle='black';          
            ctx.arc(x, y, 10, 0, 2 * Math.PI);
            ctx.fillStyle = 'black';
            ctx.fill();
            ctx.stroke();
            }    
            time1();
            setInterval(time1,1000);
                
            
                
            
        </script>
    </body>

canvas+js画时钟相关推荐

  1. 用canvas画布画时钟

    canvas canvas简介 HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形 ...

  2. 原生JS的canvas标签画时钟

    首先要申明本人对于美除了美女真没什么要求. 其次讲讲次学习碰到重要知识点: 1.画圆(弧): context.arc(x, y, radius, Math.PI / 180 * startAngle, ...

  3. 数字时钟html5 js,html5 canvas js(数字时钟)实例代码

    canvas dClock 您的浏览器太古董了,升级吧! var clock = document.getElementById("clock"); var cxt = clock ...

  4. html数字时钟免费代码,html5 canvas js(数字时钟)实例代码

    canvas dClock 您的浏览器太古董了,升级吧! var clock = document.getElementById("clock"); var cxt = clock ...

  5. 用canvas画时钟(一步步详解附带源代码)

    canvas绘图 该元素负责在页面中设定一个区域,然后由js动态地在这个区域中绘制图形.这个技术最早是由美国苹果公司推出的,目的是为了取代flash,很快主流浏览器都支持它. 绘制路径 要绘制路径首先 ...

  6. html+js+显示文字时钟,JavaScript canvas实现文字时钟

    本文实例为大家分享了canvas实现文字时钟的具体代码,供大家参考,具体内容如下 先看看效果图 代码 Document 您的浏览器不支持canvas var c=document.getElement ...

  7. Canvas绘制一个时钟

    Canvas绘制一个时钟 Canvas:一个可以使用脚本(通常为JavaScript)在其中绘制图像的 HTML 元素.它可以用来制作照片集或者制作简单(也不是那么简单)的动画,甚至可以进行实时视频处 ...

  8. html5网站粒子时钟,Html5 canvas实现粒子时钟的示例代码

    这篇文章主要介绍了Html5 canvas实现粒子时钟的示例代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 我们先看看粒子时钟的效果,如下: 下面我们将通过canvas和js实 ...

  9. s时钟画布 android,Android UI编程进阶——使用SurfaceViewt和Canvas实现动态时钟

    概述: 很多时候我们想要自己写一些类似时钟.罗盘的控件,却又找不到合适的Demo.我想这时你可能索性就直接上图片了.在Android有Canvas和Paint这么好的画师的情况下,还是选择使用图片,的 ...

  10. Android UI编程进阶——使用SurfaceViewt和Canvas实现动态时钟

    概述: 很多时候我们想要自己写一些类似时钟.罗盘的控件,却又找不到合适的Demo.我想这时你可能索性就直接上图片了.在Android有Canvas和Paint这么好的画师的情况下,还是选择使用图片,的 ...

最新文章

  1. number to string - LeetCode【数字 = 字符串】
  2. 深度解析mysql登录原理
  3. Multiple methods named 'status' found with mismatched result, parameter type or attributes
  4. 小林求职记(六)踩过Dubbo坑,回答印象深,干货整理
  5. Java学习系列(十九)Java面向对象之数据库编程
  6. 想要做音乐玩音乐,有这一个软件就够了!
  7. 计算机应用备课教案,计算机应用基础教案备课(全套).doc
  8. 机器学习之线性回归(机器学习基石)
  9. 基于VHDL的交通灯设计(实训要求)
  10. 知名密码管理应用LastPass启用双因素认证
  11. vue三级路由router-view不显示问题,路由嵌套不显示
  12. 安卓期末大作业——猫咪社区(源码+任务书)
  13. 华为交换机本地查看登录和操作日志
  14. Metasploit(超详细)命令
  15. 敏捷是只有一个系统,从楚王爱细腰说起
  16. android折叠布局,Android中FoldingLayout折叠布局的用法及实战全攻略
  17. WINCE 睡眠与唤醒
  18. 2019年4月22日A股暴跌行情思考
  19. 2022福建最新食品安全管理员模拟考试试题及答案
  20. 情人节-程序员的乐趣

热门文章

  1. PSP2000远程无线连接控制电脑
  2. 操作系统原理(三)操作系统用户界面
  3. ZEMAX基础光学设计笔记(一)
  4. FastJson jar包下载教程
  5. Hadoop入门(一篇就够了)
  6. IOS 加载自定义字体
  7. Maya: Render Setup System Maya教程:渲染设置系统 Lynda课程中文字幕
  8. 360系统修复过程中卡慢问题的解决方案
  9. 360驱动大师 2.0.0.1750 去广告去多余图标优化版(安装版 + 单文件版 + 网卡版)
  10. 2022JAVA面试题附答案(长期更新)