Cavans时钟动画

canvas绘制圆环百分比进度的动态效果 阅读详情
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>获取本地时间的Html5时钟特效</title>
</head>
<body>
<div style="width:520px;margin:0 auto;">
    <canvas id="clock" width="520" height="520">您的浏览器不支持canvas标签</canvas>
</div>
<script type="text/javascript">
    var canvas = document.getElementById('clock');
    var clock = canvas.getContext('2d');
    function drowClock(){
        //清除画布
        clock.clearRect(0, 0, 800, 800);
        var now = new Date();
        var secd = now.getSeconds();
        var min = now.getMinutes();
        var hour = now.getHours();
        //小时必须获取浮点类型(小时+分数转化的小时)
        //时间格式19:23:30
        //将24小时进制装换为12小时进制
        hour = hour + (min / 60);
        hour = hour > 12 ? hour - 12 : hour;
        //背景
        clock.beginPath();
        clock.lineWidth = 10;
        clock.strokeStyle = "blue";
        clock.arc(250, 250, 200, 0, 360, false);
        clock.stroke();
        clock.closePath();
        //刻度
        //时刻度
        for (var i = 0; i < 12; i++) {
            clock.save();
            //设置时针的粗细
            clock.lineWidth = 7;
            //设置时针的颜色
            clock.strokeStyle = "#000";
            //先设置0,0点
            clock.translate(250, 250);
            //再设置旋转角度
            clock.rotate((i * 30) * Math.PI / 180);//角度*Math.PI/180=弧度
            clock.beginPath();
            clock.moveTo(0, -170);
            clock.lineTo(0, -190);
            clock.closePath();
            clock.stroke();
            clock.restore();
        }
        //分刻度
        for (var i = 0; i < 60; i++) {
            clock.save();
            //设置时针的粗细
            clock.lineWidth = 3;
            //设置时针的颜色
            clock.strokeStyle = "#000";
            //先设置0,0点
            clock.translate(250, 250);
            //再设置旋转角度
            clock.rotate((i * 6) * Math.PI / 180);//角度*Math.PI/180=弧度
            clock.beginPath();
            clock.moveTo(0, -180);
            clock.lineTo(0, -190);
            clock.closePath();
            clock.stroke();
            clock.restore();
        }
        //时针
        clock.save();
        clock.lineWidth = 7;
        clock.strokeStyle = "black";
        clock.translate(250, 250);
        clock.rotate(hour * 30 * Math.PI / 180);
        clock.beginPath();
        clock.moveTo(0, -140);
        clock.lineTo(0, 10);
        clock.stroke();
        clock.closePath();
        clock.restore();
        ////分针
        clock.save();
        clock.lineWidth = 5;
        clock.strokeStyle = "black";
        clock.translate(250, 250);
        clock.rotate(min * 6 * Math.PI / 180);
        clock.beginPath();
        clock.moveTo(0, -160);
        clock.lineTo(0, 10);
        clock.stroke();
        clock.closePath();
        clock.restore();
        //秒针
        clock.save();
        clock.lineWidth = 3;
        clock.strokeStyle = "red";
        clock.translate(250, 250);
        clock.rotate(secd * 6 * Math.PI / 180);
        clock.beginPath();
        clock.moveTo(0, -170);
        clock.lineTo(0, 10);
        clock.closePath();
        clock.stroke();
        //画交叉点
        clock.beginPath();
        clock.arc(0, 0, 5, 0, 360, false);
        clock.closePath();
        clock.fillStyle = "gray";
        clock.fill();
        clock.stroke();
        clock.beginPath();
        clock.arc(0, -150, 5, 0, 360, false);
        clock.closePath();
        clock.fillStyle = "gray";
        clock.fill();
        clock.stroke();
        clock.restore();
    }
    //使用setInternal(代码,(毫秒)时间)  让时钟动起来
    drowClock();
    setInterval(drowClock, 1000);
</script>
</body>
</html>
璀璨星空,星空效果 通过实现 runnable接口 运用多线程的 sleep()方法法再浏览器中显示出一个星空的效果 立即下载

相关推荐

步进电机选型避雷手册:为什么你的42HS电机总丢步?从相数、电流到散热全面拆解

本文深入剖析了42HS步进电机在高速或重载下易出现丢步问题的根本原因。文章指出,选型时不应仅关注静态保持转矩,而需重点分析动态矩频曲线、合理匹配驱动器电流与细分数、进行准确的机械传动惯量计算,并有效管理系统共振与散热。通过全面拆解这些关键因素,为工程师提供了实用的选型避雷指南与系统优化方案。

weixin_29275257的博客 97

可视化系列讲解:canvas的动画实现

前端可视化系列讲解:css3D,svg,canvas等

wangyuiba1314的博客 9019

inferCNV包安装问题及解决办法

InferCNV是一个由broad研究所开发的,利用单细胞转录组数据分析肿瘤细胞拷贝数变异(CNV)的工具。基本思路是在整个基因组范围内,通过计算肿瘤细胞关于参考的“正常”细胞的相对表达,利用滑窗思想对邻近的基因相对表达,计算拷贝数。 先贴一个官方安装说明: 官方infercnv安装说明 安装infercnv包: if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager") BiocManager:

m0_51042606的博客 6803

学习 canvas (四) 绘制动画

使用requestAnimationFrame绘制动画 在canvas中的动画,我们可以理解为,canvas在一遍又一遍的绘制相同的东西。为了更好的适应人体的眼睛,我们绘制图像的间隔最好在16毫秒。 当然在JavaScript中setInterval()函数也可以实现间隔16毫秒后继续绘制,不过它将始终以相同的速度绘制,而不管用户使用的是哪种浏览器,用户在做什么。会导致,它可以工作,但是效率不高。 requestAnimationFrame 浏览器在下次重绘之前调用指定的回调函数。在某个时候,当浏览器准备

小小的前端 9684

anaconda安装-超详细版

文章目录一、anaconda安装1.1 anaconda安装地址1.2 安装详细步骤检验安装是否成功更改conda源(后续安装第三方库可以加快速度) 一、anaconda安装 Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。装anaconda,就不需要单独装python了。 anaconda优点: 1、anaconda里面集成了很多关于python科学计算的第三方库,主要是安装方便,而p

in546的博客 25万+

3D Slicer:从入门到精通——数据模块之DICOM

该模块允许导入、导出和网络传输DICOM数据。Slicer支持DICOM功能的常用子集,其特定功能由临床研究的需求驱动:从磁盘读取和写入数据集,并通过DIMSE和DICOMweb网络协议进行网络传输——查询检索发送和接收数据集。医学数字成像和通信(DICOM)是信息交换数字放射学的广泛使用标准。在大多数情况下,医院使用的成像设备(CT和MR扫描仪)将生成保存为DICOM对象的图像。DICOM按以下层次结构组织数据患者… 可以有1个或多个研究(单次成像检查) … 可以有1个或多个系列。

walt3433的博客 6065

canvas绘制动画

【代码】canvas绘制动画。

qq_21277357的博客 409

[系统安全] 十七.Windows PE病毒概念、分类及感染方式详解

作者前文介绍了PE文件格式,熟悉各种PE编辑查看工具,针对目标EXE程序新增对话框等;这篇文章将介绍Windows PE病毒, 包括PE病毒原理、分类及感染方式详解,并通过案例进行介绍。这些基础性知识不仅和系统安全相关,同样与我们身边的APP、常用软件及操作系统紧密联系,希望这些知识对您有所帮助,更希望大家提高安全意识,安全保障任重道远。本文参考了《软件安全》视频、安全网站和参考文献中的文章,并结合自己的经验和实践进行撰写,也推荐大家阅读参考文献。

杨秀璋的专栏 1万+

【canvas】前端创造的图片粒子动画效果:HTML5 Canvas 技术详解

我们将深入探讨如何通过 HTML5 的 Canvas 功能,将上传的图片转换成引人入胜的粒子动画效果。这种效果将图片分解成小粒子,并在用户与它们交互时产生动态变化。我们将分步骤详细解析代码,让你能够理解每一行代码的作用,并自己实现这一效果。 首先,你需要一个简单的 HTML 元素和一些样式设置: 这段 HTML 设置了一个文件输入控件供用户上传图片,以及一个 Canvas 元素用于渲染动画效果。样式使页面内容居中显示,并将背景设置为浅灰色。JavaScript 脚本是这个效果的核心,下面我们逐一解析每个部分

九日的博客 2905

对MixPad精灵(触屏语音开关)进行解剖分析

概述 最近有点忙,已经很久没有更新文章了,对不起各位网友啦~ 这次对ORVIBO的新产品:MixPad精灵款的来个剖析,希望对大家有所帮助! 首先,我买了一台对应的设备,直接去官网采购,价格吗还算OK,400多的价格。 拆箱的过程我就不写了,简单的上个图就行了。 一、拆包: 主屏板包装盒(顶部): 主屏板包装盒(底部): 后盖电源部分无内容,我就不拍了,给优快云空间省点存储位置。 二、设备剖析开始 接下来,我们开始对设备进行剖析,步骤如下: 1、拆掉主屏板后盖板,...

LeeKwen的专栏 3944

Android 13.0 framework层系统手势增加上滑手势home事件功能(相当于Home键)

在13.0的定制化开发系统手势功能的时候,客户需求要求在上滑手势的时候,在底部上滑时候进入系统桌面,也就是增加 home键功能,所以就需要分析相关的系统手势上滑事件,然后添加home事件这样 就可以实现这个功能了

安卓兼职framework和app工程师的博客 1133

SVG 与 HTML5 的 canvas 优缺点

Canvas适用场景     Canvas提供的功能更原始,适合像素处理,动态渲染和大数据量绘制 依赖分辨率  不支持事件处理器 弱的文本渲染能力 能够以 .png 或 .jpg 格式保存结果图像 最适合图像密集型的游戏,其中的许多对象会被频繁重绘 SVG适用场景    SVG功能更完善,适合静态图片展示,高保真文档查看和打印的应用场景 不依赖分辨率,无限放大后不会失真 支持事件...

qq_31965515的博客 3501

cadence17.4和16.6同时安装无法使用的问题

经过对报错的问题分析,发现还是17.4的lic文件和16.6的不一样,16.6的版本总是无法找到自己对应的lic文件。卸载了,重新单独安装16.6,这里就是正确的。包括使用这些工具去修复这些问题,都无法接近。已经放弃了,使用哪个版本就安装 哪个版本。这个也无法解决问题。

D_Katter的博客 2324

6.1 canvas 时钟案例

code <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>时钟</title> </head> <body> <canvas id=myCanvas width=500 height...

HPUZJH 260

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

canvas绘制时钟刻度表

canvas绘制时钟刻度表1.首先看一下效果图2.基本知识点canvas.drawText:绘制文字,注意基线的位置为文字的左下角y轴所在的线canvas.drawLine:绘制线段,指定起始位置就好canvas.save:保存canvas的状态,比如translate平移之前或者rotate(单位为°,正为顺时针)旋转之前的状态canvas.restore:恢复到保存时候的canvas状态,这么...

libinbin147256369的博客 3240

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

2个canvas叠加运用(时钟例子)

最近在学习canvas,http://corehtml5canvas.com/code-live/,主要的学习方式就是通过上面的一些例子来学习canvas的一些用法。但是我发现,这里的例子,只要canvas的内容有一点点变化(甚至是某个元素位置的变动),都会去清空整个canvas然后整个canvas重绘。例如下面时钟的例子 http://corehtml5canvas.com/code-liv...

weixin_30628801的博客 1251

HTML5之canvas绘制动态时钟

         最近看了一些HTML5的网页,感觉很高端,于是开始上手HTML5,跟着网上的视频学,收获还是不小,今天说说这几天学的HTML5新加的canvas标签,通过写这篇博客来巩固一下这几天学到的东西。          canvas标签是是HTML5新加的绘制背景的,但是正像"canvas"的意思“画布”一样,它只是一张给别人在上面画东西的东西,就像我们小学时的美术本一样是给我们来...

MN唐Ms 429

canvas绘制时钟 光明 | 黑暗主题

canvas绘制时钟 光明 | 黑暗主题 先上效果图 canvas时钟的绘制参考了 # Sunshine_Lin大佬的# 为了让她10分钟入门canvas,我熬夜写了3个小项目和这篇文章这篇文章,具体样式是参考了B站 @Webb-L 的视频,然后以这两个为基础做了这个小demo 我个人认为比较有难点的就是四个阴影的绘制 // 外右下阴影 ctx.shadowOffsetX = 10; // 阴影Y轴偏移 ctx.shadowOffsetY = 10; // 阴影X轴偏移 ctx.shadowBlur =

weixin_45472408的博客 304

5分钟实现小姐姐喜欢的,抖音文字时钟--下

码个蛋(codeegg)第 724次推文作者:二娃_原文:https://juejin.im/post/5d52aea86fb9a06ae61aad5b前言源码地址设置动态壁纸-Te...

陈宇明 528

利用canvas实现炫酷的倒计时效果

1.效果预览(文章最后面有源码) 2.代码实现 2.1 简要分析 这个案例可以大概分成三步来实现:首先绘制出时间,然后根据时间的变动产生相应的彩色小球,最后让这些小球运动起来。 第一步:通过观察我们可以看到,这些时间都是用一个个小球拼出来的,所以我们采用的方法就是利用一个点阵来表示一个数字,例如数字0就可以用如下的点阵来表示,具体绘制的时候,在数字1的位置进...

利用Transition过渡完成手风琴菜单 1870

【Android Canvas系列】使用canvas绘制简单的clock

使用Canvas绘制简单的时钟

Sogoe的博客 993

canvas做钟表

var drawing = document.getElementById("canvas"); if(drawing.getContext){ var context=drawing.getContext("2d"); context.beginPath(); context.arc(100,100,99,0,2*Math.PI,false); context.moveTo(194,1

wu_xiao_qing的博客 623

Canvas画表实现当前时间走动

&amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html lang=&quot;en&quot;&amp;gt; &amp;lt;head&amp;gt; &amp;lt;meta charset=&quot;UTF-8&quot;&amp;gt; &amp;lt;title&amp;gt;Document&amp;lt;/title&amp;g

weixin_43735788的博客 426

html5之canvas基础1

1、canvas画布常用属性:width、height,使用canvas时首先需要获取画布: var can = document.getElementById("canvas"); var ctx = can.getContext('2d');在画布上每一笔都会有一个开始、结束,否则画出来的效果会连在一起 ctx.beginPath(); 。。。 ctx.closePath(); 2、画笔

赶路人儿 1145

舵机PWM控制原理与实战:从SG90到总线舵机的驱动与调试指南

PWM(脉冲宽度调制)是一种通过调节脉冲宽度来控制模拟信号电平的常用技术,其核心原理是利用固定频率的方波,通过改变高电平的持续时间(脉宽)来等效实现不同电压或功率的输出。在嵌入式系统和机器人控制领域,PWM是实现舵机角度精确控制的基础技术,其价值在于能够将数字信号高效、精准地转换为机械运动。无论是智能小车的转向控制,还是机械臂的关节驱动,都离不开对PWM脉宽、周期与舵机角度映射关系的深入理解。本文以飞特STS系列舵机为例,结合**舵机抖动**和**PID调参**等常见工程挑战,系统剖析了从Arduino到S

weixin_33862993的博客 294

微信小游戏开发Canvas资源汇总

Demo: 微信小程序demo组件:股票分时图 微信小程序小组件:仿直播点赞气泡效果,基于Canvas 优质demo推荐:二维码生成器;使用canvas与纯JS版二维码生成 微信小程序学习用完整demo:canvas涂鸦(含node后端) 微信小程序canvas demo:黑客帝国metrix效果、渐变时钟 微信小程序优质demo推荐:转盘抽奖:Canvas绘制可配置(已...

weixin_30415113的博客 195
上一篇: H5formData无刷新上传文件
下一篇: iframe跨域访问
bing_JavaScript
博客等级 码龄11年 44粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值