温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

javascript如何实现简单钟表效果

发布时间:2021-03-10 17:10:39 来源:亿速云 阅读:238 作者:TREX 栏目:web开发

这篇文章主要介绍“javascript如何实现简单钟表效果”,在日常操作中,相信很多人在javascript如何实现简单钟表效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”javascript如何实现简单钟表效果”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

JavaScript的特点

  1. JavaScript主要用来向HTML页面添加交互行为。

   2.JavaScript可以直接嵌入到HTML页面,但写成单独的js文件有利于结构和行为的分离。         3.JavaScript具有跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行。

javascript如何实现简单钟表效果

复制可直接使用

<!DOCTYPE html> <html>  <head>  <meta charset="UTF-8">  <title></title>  <style>  h2 {  text-align: center;  }    div {  width: 400px;  height: 400px;  margin: 10px auto;  padding: 0;  }  </style>  </head>  <body>  <h2>手绘时钟</h2>  <hr />  <div>  <canvas id="c1" width="400px" height="400px">    </canvas>  </div>  <script type="text/javascript">  var clock = document.getElementById("c1").getContext("2d");   // var clock = $("#huabu").get(0).getContext("2d"); //$中使用画布    function play() {  clock.clearRect(0, 0, 400, 400);  clock.save();  clock.translate(200, 200); //把画布中心转移到canvas中间  biaopan();  run();  clock.restore();  }  setInterval(function() {  play();  }, 1000);  function biaopan() {  //绘制表盘  clock.strokeStyle = " #9932CC";  clock.lineWidth = 5;  clock.beginPath();  clock.arc(0, 0, 195, 0, 2 * Math.PI);  clock.stroke();    //刻度(小时)  clock.strokeStyle = "#9932CC";  clock.lineWidth = 5;  for(var i = 0; i < 12; i++) {   clock.beginPath();   clock.moveTo(0, -190);   clock.lineTo(0, -170);   clock.stroke();   clock.rotate(2 * Math.PI / 12);  }  //刻度(分钟)  clock.strokeStyle = "#9932CC";  clock.lineWidth = 3;  for(var i = 0; i < 60; i++) {   clock.beginPath();   clock.moveTo(0, -190);   clock.lineTo(0, -180);   clock.stroke();   clock.rotate(2 * Math.PI / 60);  }  //绘制文字  clock.textAlign = "center";  clock.textBaseline = "middle";  clock.fillStyle = "#6495ED";  clock.font = "20px 微软雅黑"  for(var i = 1; i < 13; i++) {   clock.fillText(i,Math.sin(2*Math.PI /12*i)*150,Math.cos(2*Math.PI/12*i)*-150);  }    }  function run() {  var date = new Date();  var h = date.getHours();  var m = date.getMinutes();  var s = date.getSeconds(); // if(h > 12) { //  h = h - 12; // }  //日期  var week = date.getDay();  var month = date.getMonth() + 1;  var day = date.getDate();  switch (week){   case 1: week = "星期一";   break;   case 2: week = "星期二";   break;   case 3: week = "星期三";   break;   case 4: week = "星期四";   break;   case 5: week = "星期五";   break;   case 6: week = "星期六";   break;   default: week = "星期天";   break;  }  clock.save();  clock.textAlign = "center";  clock.textBaseline = "middle";  clock.fillStyle = "black";  clock.font = "16px"  clock.fillText(week,-2,-118);  clock.fillText(month+" 月",-90,2);  clock.fillText(day+" 号",90,0);  clock.stroke();  clock.restore();  //时针  //分针60格 分针5格   clock.save();  clock.rotate(2 * Math.PI / 12 * h + (2 * Math.PI / 60 * m + 2 * Math.PI / 60 * s / 60) / 12);  clock.strokeStyle = "black";  clock.lineWidth = 7;  clock.beginPath();  clock.moveTo(0, 0);  clock.lineTo(0, -80);  clock.lineCap = "round";  clock.stroke();  clock.restore();  //分针  //秒针60格 分针一格  clock.save();  clock.beginPath();  clock.strokeStyle = "#D2691E";  clock.lineWidth = 5;  clock.rotate(2 * Math.PI / 60 * m + 2 * Math.PI / 60 * s / 60);  clock.moveTo(0, 0);  clock.lineTo(0, -110);  clock.lineCap = "round";  clock.stroke();  clock.restore();  //秒针  clock.strokeStyle = "red";  clock.rotate(2 * Math.PI / 60 * s);  clock.lineWidth = 4;  clock.beginPath();  clock.moveTo(0, 0);  clock.lineTo(0, -120);  clock.lineCap = "round";  clock.stroke();  //中心  clock.fillStyle = " #CCFFFF";  clock.lineWidth = 5;  clock.beginPath();  clock.arc(0, 0, 10, 0, 2 * Math.PI);  clock.fill();  clock.strokeStyle = "cadetblue";  clock.stroke();    }  </script>  </body> </html>

到此,关于“javascript如何实现简单钟表效果”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

js
AI