以下是一个简单的HTML5动态时钟的示例:
<!DOCTYPE html>
<html>
<head><title>HTML5动态时钟</title><style>body {margin: 0;padding: 0;background-color: #000;color: #fff;font-size: 5em;font-family: Arial, sans-serif;text-align: center;}</style>
</head>
<body><script>function updateTime() {var now = new Date();var hours = now.getHours();var minutes = now.getMinutes();var seconds = now.getSeconds();hours = (hours < 10 ? "0" : "") + hours;minutes = (minutes < 10 ? "0" : "") + minutes;seconds = (seconds < 10 ? "0" : "") + seconds;var timeString = hours + ":" + minutes + ":" + seconds;document.getElementById("clock").innerHTML = timeString;}setInterval(updateTime, 1000);</script><div id="clock"></div>
</body>
</html>
该示例使用了HTML5,CSS和JavaScript来创建一个简单的动态时钟。CSS样式用于设置页面的背景颜色,文本颜色,字体大小,字体样式和文本对齐方式。JavaScript代码用于获取当前时间,并将其格式化为HH:MM:SS字符串,然后将其显示在页面上的一个DIV元素中。setInterval函数用于每秒钟调用一次updateTime函数,以便时钟可以动态更新。
动态时钟效果
以下是一个HTML5动态时钟表盘的示例代码:
<!DOCTYPE html>
<html>
<head><title>HTML5动态时钟表盘</title><style>body {margin: 0;padding: 0;background-color: #000;color: #fff;font-family: Arial, sans-serif;text-align: center;}canvas {display: block;margin: 0 auto;}</style>
</head>
<body><canvas id="clock" width="400" height="400"></canvas><script>var canvas = document.getElementById("clock");var context = canvas.getContext("2d");var radius = canvas.height / 2;context.translate(radius, radius);radius = radius * 0.90;setInterval(drawClock, 1000);function drawClock() {drawFace(context, radius);drawNumbers(context, radius);drawTime(context, radius);}function drawFace(context, radius) {var grad;context.beginPath();context.arc(0, 0, radius, 0, 2*Math.PI);context.fillStyle = '#333';context.fill();grad = context.createRadialGradient(0,0,radius*0.95, 0,0,radius*1.05);grad.addColorStop(0, '#fff');grad.addColorStop(0.5, '#333');grad.addColorStop(1, '#fff');context.strokeStyle = grad;context.lineWidth = radius*0.1;context.stroke();context.beginPath();context.arc(0, 0, radius*0.1, 0, 2*Math.PI);context.fillStyle = '#fff';context.fill();}function drawNumbers(context, radius) {var ang;var num;context.font = radius*0.15 + "px arial";context.textBaseline="middle";context.textAlign="center";for(num = 1; num < 13; num++){ang = num * Math.PI / 6;context.rotate(ang);context.translate(0, -radius*0.85);context.rotate(-ang);context.fillText(num.toString(), 0, 0);context.rotate(ang);context.translate(0, radius*0.85);context.rotate(-ang);}}function drawTime(context, radius){var now = new Date();var hour = now.getHours();var minute = now.getMinutes();var second = now.getSeconds();// 小时hour=hour%12;hour=(hour*Math.PI/6)+(minute*Math.PI/(6*60))+(second*Math.PI/(360*60));drawHand(context, hour, radius*0.5, radius*0.07);// 分钟minute=(minute*Math.PI/30)+(second*Math.PI/(30*60));drawHand(context, minute, radius*0.8, radius*0.07);// 秒钟second=(second*Math.PI/30);drawHand(context, second, radius*0.9, radius*0.02);}function drawHand(context, pos, length, width) {context.beginPath();context.lineWidth = width;context.lineCap = "round";context.moveTo(0,0);context.rotate(pos);context.lineTo(0, -length);context.stroke();context.rotate(-pos);}</script>
</body>
</html>
该示例使用了HTML5的canvas元素和JavaScript来创建一个动态时钟表盘。CSS样式用于设置页面的背景颜色,文本颜色,字体样式和文本对齐方式。JavaScript代码用于画出时钟表盘,包括表盘的外圆,刻度线,数字和时、分、秒针。setInterval函数用于每秒钟调用一次drawClock函数,以便时钟表盘可以动态更新。
动态时钟表盘效果
查看全文
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dgrt.cn/a/2225467.html
如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!
相关文章:
Html5代码实现动态时钟
以下是一个简单的HTML5动态时钟的示例:
<!DOCTYPE html>
<html>
<head><title>HTML5动态时钟</title><style>body {margin: 0;padding: 0;background-color: #000;color: #fff;font-size: 5em;font-family: Arial, sans-serif……
Python 中的多线程和多进程 | 长文详解
本文深入探讨了 Python 中的多线程和多进程,以及它们如何与并发和并行相关联。介绍多线程和多进程是编程中最基本的两个概念之一。如果你已经编写了一段时间的代码,你应该已经遇到过一些情况,其中你想加快代码中某些部分的特定操作。Python支……
IEArch-卷积神经网络
一、感受
这次作业的神经网络是比上一次作业复杂的,上一次作业是“多层感知机(MLP)”,这一次的作业是“卷积神经网络(CNN)”。运算从原来的矩阵乘法变成了卷积,网络结构也更加复杂ÿ……
GPT系列简介与gpt训练(nanoGPT)
generateivelt pre-trained transformer ,GPT使用transformer做特征提取行,单项语言模型作为训练任务
gpt 1.0
通过自左向右生成式的构建预训练任务,然后得到一个通用的预训练模型,这个模型和BERT一样都可用来做下游任务的微调。GPT-1当时在……
Ansible SSH连接/入门/资产
Ansible SSH连接/入门/资产
Ansible管理节点与被管理节点建立ssh信任
首先在管理节点中创建密钥对:
[rootlocalhost ~]# ssh-keygen -t rsa被管理节点地址:
[rootiZbp1c824n8qxlt2sn9bheZ ~]# hostname -i需要将本地公钥传输到被管理节点:
ssh-copy……
Spring Security 6.0系列【15】认证篇之实现短信验证码登录功能
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.0.4 本系列Spring Security 版本 6.0.2 源码地址:https://gitee.com/pearl-organization/study-spring-security-demo 文章目录 1. 实现思路2. 案例演示2.1 获取短信验证码2.2 自定义认证对象2.3 创建认证……
C++多线程实战: 实现简单的生产者-消费者模式
文章目录前言1. 生产者/消费者模式介绍2. 生产者/消费者模式实现总结前言
最近在复习C多线程方面的知识,借此机会实现了生产者-消费者模式。 1. 生产者/消费者模式介绍
本次实现的生产者消费模式,读者可以类比馒头生产和销售。馒头生产最多存储10个大馒……
C语言中的函数与数组详解
C语言中,不能被其他源文件调用的函数称为内部函数,也称为静态函数。内部函数由static关键字来定义,形式为:static [数据类型] 函数名([参数])。static是对函数作用范围的限定,限定该函数只能在其所处的源文件中使用。因……
PrintDocument DrawString C# 换行问题
在使用 80mm 小票机 做 再次开发时 使用 DrawString 无法自动换行 导致文字被截断
终于找到解决方案: 别忘了给我点赞,留言
源代码如下:立跑可用 链接:https://pan.baidu.com/s/1vywMUvGXMaFh_1o7ywDQTA?pwdyyyy 提取码:yyyy…
自学脚手架——《热力学·统计物理》 by 汪志诚(第二,三,四,五,六,七,八,九,十,十一章)
文章目录第二章 均匀物质的热力学性质2.2 麦氏关系的简单应用- 热力学正方形(Thermodynamic square)- 外微分形式2.6 热辐射的热力学理论- 热辐射的基尔霍夫定律(Kirchhoffs law of thermal radiation)第三章 单元系相变第四章 多……
【面试题 高逼格利用 类实现加法】编写代码, 实现多线程数组求和.
编写代码, 实现多线程数组求和.关键1. 数组的初始化关键2. 奇偶的相加import java.util.Random;public class Thread_2533 {public static void main(String[] args) throws InterruptedException {// 记录开始时间long start System.currentTimeMillis();// 1. 给定一个很长的……
一个python训练
美国:28:麻省理工学院,斯坦福大学,哈佛大学,加州理工学院,芝加哥大学,普林斯顿大学,宾夕法尼亚大学,耶鲁大学,康奈尔大学,哥伦比亚大学,密歇根大学安娜堡分校,约翰霍普金斯大学,西北大学,加州大学伯克利分校,纽约大学,加州大学洛杉矶分校,杜克大学,卡内基梅隆大学,加州大学圣地……
Mybatis03学习笔记
目录 使用注解开发
设置事务自动提交
mybatis运行原理
注解CRUD
lombok使用(偷懒神器,大神都不建议使用)
复杂查询环境(多对一)
复杂查询环境(一对多)
动态sql环境搭建
动态sql常用标签……
编程日记2023/4/16 14:55:50
设置或取得c# NumericUpDown 编辑框值的方法,(注意:不是Value值)
本人在C#开发中使用到了NumericUpDown控件,但是发现该控件不能直接控制显示值,经研究得到下面的解决办法
NumericUpDown由于是由多个控件组合而来的控件,其中包含一个类似TextBox的控件,若想取得或改变其中的值要使用如下方法
N……
编程日记2023/4/16 14:55:46
使用NPOI 技术 的SetColumnWidth 精确控制列宽不能成功的解决办法(C#)
在使用NPOI技术开发自动操作EXCEL软件时遇到不能精确设置列宽的问题。
如
ISheet sheet1 hssfworkbook.CreateSheet("Sheet1");
sheet1.SetColumnWidth(0, 50 * 256); // 在EXCEL文档中实际列宽为49.29
sheet1.SetColumnWidth(1, 100 * 256); // 在EXCEL文……
编程日记2023/4/16 14:55:46
Mysql 数据库zip版安装时basedir datadir 路径设置问题,避免转义符的影响
本人在开发Mysql数据库自动安装程序时遇到个很奇怪的问题,其中my.ini的basedir 的路径设置是下面这样的:
basedir d:\测试\test\mysql
但是在使用mysqld安装mysql服务时老是启动不了,报1067错误,后来查看window事件发现一个独特……
java stream sorted排序 考虑null值
项目里使用到排序, java里没有像C# 里的linq,只有stream,查找stream.sorted源码看到有个
Comparator.nullsLast
然后看了一下实现,果然是能够处理null值的排序,如:minPriceList.stream().sorted(Comparator.comparing(l -> l.g……
spring @EnableConfigurationProperties 实现原理
查看DataSourceAutoConfiguration源码,发现如下代码: Configuration ConditionalOnClass({ DataSource.class, EmbeddedDatabaseType.class }) EnableConfigurationProperties(DataSourceProperties.class) Import({ DataSourcePoolMetadataProvidersCon……
postman请求https网址没有响应,但是用浏览器有响应,解决办法
遇到个问题:同一个get请求的url,postman请求https网址没有响应,但是用浏览器有响应
url是https开头的,查看错误描述里有一个SSL的选项: 然后根据描述关掉这个选项: 然后就没问题了,能正常请求及……
java @Inherited注解的作用
看到很多注解都被Inherited进行了修饰,但是这个Inherited有什么作用呢?
查看Inherited代码描述:
Indicates that an annotation type is automatically inherited. If an Inherited meta-annotation is present on an annotation type decl……
编程日记2023/4/16 14:55:43