首页 > 其他分享 >前端做一个时钟罗盘

前端做一个时钟罗盘

时间:2024-06-10 10:31:38浏览次数:11  
标签:style const 前端 transform hand height HTML 罗盘 时钟

要实现一个时钟罗盘,可以使用HTML、CSS和JavaScript来完成。下面是一个简单的前端代码示例:

 

HTML代码:

<!DOCTYPE html>
<html>
<head>
  <title>时钟罗盘</title>
  <link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
  <div class="clock">
    <div class="hour-hand"></div>
    <div class="minute-hand"></div>
    <div class="second-hand"></div>
  </div>

  <script src="script.js"></script>
</body>
</html>

CSS代码(style.css):

.clock {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  border: 2px solid black;
  position: relative;
  margin: 100px auto;
}

.hand {
  position: absolute;
  background-color: black;
  transform-origin: bottom center;
  transition-timing-function: cubic-bezier(.09,.02,.28,1);
}

.hour-hand {
  width: 6px;
  height: 60px;
  top: 70px;
  left: 97px;
}

.minute-hand {
  width: 4px;
  height: 80px;
  top: 50px;
  left: 98px;
}

.second-hand {
  width: 2px;
  height: 90px;
  top: 40px;
  left: 99px;
}

JavaScript代码(script.js):

function rotateClockHands() {
  const date = new Date();
  const hours = date.getHours();
  const minutes = date.getMinutes();
  const seconds = date.getSeconds();
  
  const hourHand = document.querySelector('.hour-hand');
  const minuteHand = document.querySelector('.minute-hand');
  const secondHand = document.querySelector('.second-hand');
  
  const hourRotation = (hours * 30) + (minutes / 2);
  const minuteRotation = (minutes * 6) + (seconds / 10);
  const secondRotation = seconds * 6;
  
  hourHand.style.transform = `rotate(${hourRotation}deg)`;
  minuteHand.style.transform = `rotate(${minuteRotation}deg)`;
  secondHand.style.transform = `rotate(${secondRotation}deg)`;
}

setInterval(rotateClockHands, 1000);

这个时钟罗盘会根据当前的时间,动态地将时针、分针和秒针旋转到相应的位置。你可以将上述代码保存为HTML、CSS和JavaScript文件,然后在浏览器中打开HTML文件,就可以看到时钟罗盘的效果了。

标签:style,const,前端,transform,hand,height,HTML,罗盘,时钟
From: https://blog.csdn.net/2402_84765445/article/details/139548374

相关文章

  • 如何快速入门Element-UI:打造高效美观的前端界面
    Element-UI是一款基于Vue.js的开源组件库,提供了丰富的UI组件,可以帮助开发者快速构建美观、响应式的前端界面。本文将详细介绍如何快速入门Element-UI,包括环境搭建、组件使用、样式定制及常见问题解决方法,帮助你高效地使用Element-UI进行前端开发。一、环境搭建1.准......
  • 【Tools】 探索 Chrome DevTools:前端开发者的必备工具
    我已经从你的全世界路过像一颗流星划过命运的天空很多话忍住了不能说出口珍藏在我的心中只留下一些回忆                     ......
  • Python模拟时钟演示及源代码
     turtle是Python中的一个模块,用于绘图和图形设计。它提供了一个简单的绘图窗口,可以绘制各种形状、线条和颜色等。通过使用turtle模块,我们可以在屏幕上实时地绘制图形,并且可以控制画笔的移动、旋转等操作。 2、使用示例下面是一个简单的使用turtle模块绘制一个正方形的......
  • Idea运行前端项目--配置node配置
    1.idea中配置node.js的路径2.右键点击前端项目package.json-->ShownpmScript右键dev或serve-->Edit'dev'Settings3.右键项目根目录-->openin-->terminal-->执行命令npmi4.最后运行即可......
  • 【java】JVM前端编译器的局限性
    目录1.不涉及编译优化2.功能限制3.静态编译特性4.与AOT编译器的对比1.不涉及编译优化1.前端编译器的主要任务是将符合Java语法规范的Java代码转换为符合JVM规范的字节码文件2.并不会直接涉及编译优化等方面的技术。3.具体的优化细节通常是由HotSpot的JIT(Jus......
  • 前端-资料收集
    React教程|菜鸟教程快速入门–React中文文档 nodejsNode.js教程|菜鸟教程【cnpm】cnpm的安装方法(附详细步骤)_cnpm安装-CSDN博客  ReactHooksReact内置Hook–React中文文档Webpack 配置概念|webpack中文文档|webpack中文文档|webpack中文网......
  • IT闲谈-WEB前端主流三大框架
    目录一、Angular二、React三、Vue.js小结前言这里给大家简单介绍一下web前端框架;随着互联网技术的飞速发展,Web前端技术也在不断地演进和更新。目前,前端比较多的三大主流前端框架Angular、React和Vue.js,成为前端开发者的得力助手。文章主要是讲解这三大框架的由来、发......
  • 前端使用 Konva 实现可视化设计器(13)- 折线 - 最优路径应用【思路篇】
    这一章把直线连接改为折线连接,沿用原来连接点的关系信息。关于折线的计算,使用的是开源的AStar算法进行路径规划,启发方式为曼哈顿距离,且不允许对角线移动。请大家动动小手,给我一个免费的Star吧~大家如果发现了Bug,欢迎来提Issue哟~github源码gitee源码示例地址灵感......
  • 从零手撕一个网页版图形编辑器之前端代码框架-整体(2)
    ​本编辑器(土豆猫图形编辑器)社区版代码已开源,开源库地址:https://gitee.com/longhan13/lgxmap_community.git从此章节开始,后续开始讲代码框架、关键模块代码、数学工具(向量、矩阵),感兴趣的朋友最好把代码下载下来,对着代码来阅读文章更有助于理解。本文开始讲解前端代码框架。n......
  • 前端读取excel文件
    <!DOCTYPEhtml><html><head><title>js读取Excel文件</title><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"/></head><bodyclass="Bodynoover">......