JS利用canvas画布功能画时钟

本文介绍如何利用JavaScript和canvas元素创建一个实时更新的时钟。通过设置计时器和清空画布,实现秒针连续运动的动画效果。详细步骤包括设置画布、绘制时钟轮廓和刻度、绘制指针,并根据本地时间转换角度。最后,通过全局计时器保持时钟的动态更新。
摘要由CSDN通过智能技术生成

首先来看看效果

思路

     利用计时器实时完成页面数据更新,计时器间隔为1000毫秒也就是1s的时间,同时利用

canvas.width = canvas.width 来删除之前的画布数据从而达到秒针不停走的动画效果。

步骤

1.进行画布设置(准备工作,同时deg表示角度换算,在后面运算在直接输入角度即可)

bin里面的东西是时钟的位置以及半径

<style>
        canvas {
            display: block;
            margin: 0 auto;
            border: 1px solid red;
        }
    </style>



<canvas></canvas>
    <script>
        let canvas = document.querySelector("canvas")
        canvas.height = 550;
        canvas.width = 800;

        let ctx = canvas.getContext("2d");
        let deg = Math.PI / 180

let bin = {
            x: 400,
            y: 300,
            r: 200,
        }

设置画布的大体轮廓

2.进行时钟轮廓绘制

//轮廓
            ctx.beginPath();

            ctx.arc(400, 300, 200, 0, 360 * deg, false);

            ctx.stroke();

 

3.完成大刻度绘制并添加数字

通过for循环将数组arr中的数逐个放入表盘中(12个刻度瓜分圆,所以每个刻度间隔为30度)

qs.为什么第一个数为3而不是1?

是因为圆的绘制是从大概3点钟的位置开始的(如果想数组从1开始的话可以在划线的每个角度基础上减去90度)


                
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值