全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

JavaScript Canvas绘制圆形时钟效果

本文实例为大家分享了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小时内与您取得联系。