canvas

canvas简介

HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像。

画布是一个矩形区域,您可以控制其每一像素。

canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

准备工作

在我们开始画时钟之前,我们需要页面上画一个canvas用来绘制时钟,而且
canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成。
其中width和height是画布的宽和高,并给它取个id后面方便找到她。
canvas.getContext(“2d”),引号中的2d标识是她是平面的

开始

setInterval(function(){

},1000)
先写个定时器每一秒执行一次,1000就代表1秒,然后我们后面代码都写在定时器里面
时钟肯定要获取时间的,所以要获取一波时间

//获取时间
var time = new Date();
var second = time.getSeconds();
var minute = time.getMinutes();
var hour = time.getHours();
//将24小时进制转为12小时,且为浮点数
var hour1 = hour+minute/60;
hour1 =hour1>12?hour1-12: hour1;
//获取现在全部时间
var NowTime = time.toLocaleString();
在获取时间后就可以先绘制表盘
ctx.beginPath();
ctx.lineWidth=8;
//设置渐变色
var jianbain = ctx.createLinearGradient(0,0,500,0);
jianbain.addColorStop(“0”,“red”);
jianbain.addColorStop(“0.5”,“green”);
jianbain.addColorStop(“1”,“blue”);
ctx.strokeStyle =jianbain;
ctx.arc(250,250,200,0,360,false);
ctx.stroke();
ctx.closePath();
.lineWidth是设置表盘的宽度
设置渐变色就是为了表盘好看些,这里选用三原色。
表盘有了就开始绘时分刻度

光有刻度还不行,我们还需要表盘的最中心的表盘中心
最后就是画表盘的时针,分针,秒针

最后来看下效果如下:

可能颜色不好看,这些都是可以随便改的,还有就是表盘中心点被针盖住了,这时可以再绘制一下中心点

         ctx.beginPath();ctx.lineWidth=1;//原谅色表心ctx.fillStyle="green";ctx.arc(250,250,4,0,360,false);ctx.fill();ctx.closePath();


效果还可以吧嘿嘿,canvas还可以画很多东西,大家不妨自己动手试试。

用canvas画布画时钟相关推荐

  1. canvas 画布绘制时钟

    利用canvas绘制时钟的一个小demo <!--* @Author: 164591357@qq.com 164591357@qq.com* @Date: 2022-08-06 11:04:07 ...

  2. canvas 画布画太极图和钟表

    摘要:html5的canvas元素称得上是html5的核心技术,而作为一个依靠js绘制华丽图像的元素,Canvas究竟能够运用在哪些方面的开发? 相关代码 什么是Canvas? Canvas元素是h5 ...

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

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

  4. html画布动漫人物,canvas画布画卡通人物--哆啦A梦

    #canvas1 {background-color: #5F9EA0;} var can = document.getElementById("canvas1"); var pe ...

  5. 利用canvas画布画哆啦A梦

    简易版哆啦A梦源代码: <!DOCTYPE html> <html><head><title>哆啦A梦</title><meta ch ...

  6. 利用canvas画布和rotate()方法让画的图形旋转起来

    上一篇讲了利用canvas画布画太极图,这一篇说的是让太极图旋转起来. **思路:**利用HTML DOM 的setInterval()方法,它会按照指定的周期来调用函数或计算表达式.再利用画布的ro ...

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

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

  8. s时钟画布 android,Canvas画布实现自定义时钟效果

    标题 *{margin:0; padding:0; list-style:none;} .box{ width: 420px; height: 420px; margin: 50px auto 0; ...

  9. LV2之-----canvas 画布实现 自转时钟 大转盘

    canvas 画布运用实例:1.系统时钟 <!DOCTYPE html> <html lang="en"><head><meta char ...

最新文章

  1. UnidentifiedImageError: cannot identify image file <_io.BufferedReader name=‘D:\\Download\
  2. 十八、启动jmeter时提示findstr不是内部命令的解决方案
  3. mysql数据库制定位置_MySQL数据库在指定位置增加字段
  4. scp构造端口_指定端口号的scp
  5. 别瞎忙活:创业公司的6条时间管理策略
  6. path r'c test.html',robot framework - robot命令参数解析
  7. [BZOJ]3926 诸神眷顾的幻想乡(ZJOI2015)
  8. (12)Zynq CAN控制器介绍
  9. u-boot移植随笔:u-boot shell与ASCII码
  10. 在缺乏贷后数据的情况下做好策略的调整把控
  11. Overview of HEVC之3 术语
  12. Uber地图部门三员大将离职创业,要解决无人驾驶出租车的派单问题
  13. 微软MCITP系列课程(十)WSUS服务器搭建
  14. ORB-SLAM2学习2 KeyFrame.h
  15. 转 json数组对象和对象数组
  16. UINavigationController 直接pop到指定controllerView的方法
  17. ffmpeg转码测试命令
  18. acer 4741G安装ubuntu10.10显卡成功
  19. js中的this指向问题
  20. 赛扬J4105和赛扬N5095哪个好

热门文章

  1. CSDN写作表情emoji大全
  2. Unity中实现动态天空盒
  3. 升级pip 升级pip3的快速方法
  4. mbk文件导入到oracle,将Oracle DMP文件导入到oracle的全新安装中
  5. python的PIL库部分模块函数
  6. 立创eda学习笔记二十一:添加、移除泪滴
  7. visio 画图记录
  8. java——记录一次条形码、二维码、订单自动生成的制作
  9. esxi服务器下虚拟机Ubuntu系统搭建PPPoE拨号服务
  10. 苹果手机(iPhone)系统升级到IOS16.1后,发现连接WiFi、热点总是经常自动(随机)断开