本文实例为大家分享了Canvas时钟效果展示的具体代码,供大家参考,具体内容如下
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style>
canvas{
display: block;
margin: 0 auto;
background-color: #fdffad;
border: 1px solid #000;
}
</style>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded',function(){
var oC=document.querySelector('canvas');
var gd=oC.getContext('2d');
var r=oC.width/2;
function drawBackground() {
gd.save();
//渐变
var ra = gd.createLinearGradient(600, 0, 400, 0);
ra.addColorStop(1, '#2dd9ff');
ra.addColorStop(0, '#8c48dd');
//表盘
gd.translate(r, r);
gd.beginPath();
gd.fillStyle = ra;
gd.lineWidth = 10;
gd.strokeStyle = '#211f4e';
gd.arc(0, 0, r-5, 0, Math.PI *2, false);
gd.fill();
gd.stroke();
//数字
for (var i = 1; i < 13; i++) {
var rad=i * Math.PI * 2 / 12;
var x = Math.sin(rad)*(r-70);
var y= -Math.cos(rad)*(r-70);
gd.fillStyle = "red";
gd.font = "bold 80px Calibri";
gd.lineWidth = 1;
gd.textAlign = 'center';
gd.textBaseline = 'middle';
gd.strokeText(i, x, y);
}
//点
for (var i = 0; i < 60; i++) {
gd.beginPath();
var rad=i * Math.PI * 2 / 60;
var x = Math.sin(rad)*(r-30);
var y= -Math.cos(rad)*(r-30);
if (i % 5 == 0) {
gd.fillStyle = 'red';
}
else {
gd.fillStyle = '#ccc'
}
gd.lineWidth = 2;
gd.arc(x, y, 6, 0, Math.PI * 2, false);
gd.fill();
gd.stroke();
gd.closePath();
}
}
//时针
function drawHour(h,m){
gd.save();
gd.beginPath();
var rad=2*Math.PI/12*h;
var mrad=2*Math.PI/12/60*m;
gd.rotate(rad+mrad);
gd.lineWidth=20;
gd.lineCap='round';
gd.moveTo(0,10);
gd.lineTo(0,-r/3);
gd.stroke();
gd.closePath();
gd.restore();
}
//分针
function drawMinutes(m){
gd.save();
gd.beginPath();
var rad=2*Math.PI/60*m;
gd.rotate(rad);
gd.lineWidth=10;
gd.lineCap='round';
gd.moveTo(0,10);
gd.lineTo(0,-r/2);
gd.stroke();
gd.closePath();
gd.restore();
}
//秒针
function drawSeconds(s){
gd.save();
gd.beginPath();
var rad=2*Math.PI/60*s;
gd.rotate(rad);
gd.fillStyle='red';
gd.moveTo(-2,20);
gd.lineTo(2,20);
gd.lineTo(1,-r+100);
gd.lineTo(-1,-r+100);
gd.fill();
gd.closePath();
gd.restore();
}
//圆点
function drawPoint(){
gd.beginPath();
gd.fillStyle='#fff';
gd.arc(0,0,5,Math.PI*2,false);
gd.fill();
}
function drawClock(){
gd.clearRect(0,0,oC.width,oC.height);
var oDate=new Date();
var h=oDate.getHours();
var m=oDate.getMinutes();
var s=oDate.getSeconds();
drawBackground();
drawHour(h,m);
drawMinutes(m);
drawSeconds(s);
drawPoint();
gd.restore();
}
drawClock();
setInterval(drawClock,1000);
},false);
</script>
</head>
<body>
<canvas width="800" height="800"></canvas>
</body>
</html>
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# Canvas
# 时钟
# JavaScript canvas实现文字时钟
# 使用js和canvas实现时钟效果
# JavaScript canvas动画实现时钟效果
# JavaScript Canvas编写炫彩的网页时钟
# javascript+HTML5 canvas绘制时钟功能示例
# JS+H5 Canvas实现时钟效果
# JS+Canvas绘制动态时钟效果
# js Canvas绘制圆形时钟效果
# js Canvas实现的日历时钟案例分享
# js Canvas实现圆形时钟教程
# js基于canvas实现时钟组件
# 大家分享
# 具体内容
# 大家多多
# 圆点
# var
# function
# DOMContentLoaded
# addEventListener
# querySelector
# oC
# solid
# type
# script
# document
# javascript
# text
# gd
# dd9ff
# addColorStop
# beginPath
相关文章:
南宁网站建设制作定制,南宁网站建设可以定制吗?
香港服务器WordPress建站指南:SEO优化与高效部署策略
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
Python文件管理规范_工程实践说明【指导】
建站主机如何安装配置?新手必看操作指南
已有域名和空间如何快速搭建网站?
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
jQuery 常见小例汇总
建站主机选购指南与交易推荐:核心配置解析
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
名字制作网站免费,所有小说网站的名字?
如何通过商城自助建站源码实现零基础高效建站?
临沂网站制作公司有哪些,临沂第四中学官网?
如何获取PHP WAP自助建站系统源码?
建站之星如何一键生成手机站?
建站之星代理平台如何选择最佳方案?
如何用花生壳三步快速搭建专属网站?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
已有域名能否直接搭建网站?
如何在Golang中指定模块版本_使用go.mod控制版本号
微信小程序 input输入框控件详解及实例(多种示例)
如何批量查询域名的建站时间记录?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
网站制作说明怎么写,简述网页设计的流程并说明原因?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
如何在万网ECS上快速搭建专属网站?
岳西云建站教程与模板下载_一站式快速建站系统操作指南
浅析上传头像示例及其注意事项
交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?
制作网站的软件免费下载,免费制作app哪个平台好?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
宝塔Windows建站如何避免显示默认IIS页面?
建设网站制作价格,怎样建立自己的公司网站?
如何在Windows服务器上快速搭建网站?
如何用景安虚拟主机手机版绑定域名建站?
nginx修改上传文件大小限制的方法
娃派WAP自助建站:免费模板+移动优化,快速打造专业网站
济南网站建设制作公司,室内设计网站一般都有哪些功能?
已有域名和空间,如何快速搭建网站?
建站10G流量真的够用吗?如何应对访问高峰?
香港服务器网站推广:SEO优化与外贸独立站搭建策略
盐城做公司网站,江苏电子版退休证办理流程?
如何用5美元大硬盘VPS安全高效搭建个人网站?
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
如何登录建站主机?访问步骤全解析
高端建站三要素:定制模板、企业官网与响应式设计优化
*请认真填写需求信息,我们会在24小时内与您取得联系。