js手持小风扇

文章目录

  • 1. 演示效果
  • 2. 分析思路
  • 3. 代码实现

1. 演示效果

QQ录屏20240325092852 -original-original

2. 分析思路

  1. 先编写动画,让风扇先转起来。
  2. 使用 js 控制动画的持续时间。
  3. 监听按钮的点击事件,在事件中修改元素的animation-duration属性。

3. 代码实现

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>手持小风扇</title><style>html,body {padding: 0px;margin: 0px;width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;}.box {position: relative;width: 220px;height: 420px;}.top-part {width: 220px;height: 220px;box-sizing: border-box;position: relative;}.top-part .left-box {width: 220px;height: 220px;box-sizing: border-box;border-radius: 50%;border: 8px solid #333;animation: myRotate infinite linear;}@keyframes myRotate {0% {transform: rotate(0);}100% {transform: rotate(360deg);}}.top-part .left-box .leaf {position: absolute;top: 50%;left: 50%;width: 50px;height: 100px;margin-left: -25px;border-radius: 50%;background-color: rgb(106, 106, 235);margin-top: -100px;}.top-part .left-box .leaf:nth-child(2) {transform: rotate(120deg);transform-origin: 50% 100%;}.top-part .left-box .leaf:nth-child(3) {transform: rotate(240deg);transform-origin: 50% 100%;}.line-box .line {position: absolute;top: 50%;left: 0px;width: 212px;height: 2px;background-color: #333;z-index: 10;}.line-box .line:nth-child(2) {transform: rotate(30deg);}.line-box .line:nth-child(3) {transform: rotate(60deg);}.line-box .line:nth-child(4) {transform: rotate(90deg);}.line-box .line:nth-child(5) {transform: rotate(120deg);}.line-box .line:nth-child(6) {transform: rotate(150deg);}.line-box .mid-dot {position: absolute;top: 50%;left: 50%;width: 50px;height: 50px;margin-left: -25px;margin-top: -25px;background-color: #333;z-index: 11;border-radius: 50%;}.bom-part {width: 50px;height: 200px;background-color: #333;position: absolute;top: 215px;left: 50%;margin-left: -25px;}.bom-part .item {color: white;width: 22px;height: 22px;background-color: rgb(106, 106, 235);border-radius: 50%;font-size: 13px;display: flex;justify-content: center;align-items: center;margin: 0px auto;margin-top: 15px;cursor: pointer;}</style></head><body><div class="box"><div class="top-part"><div class="line-box"><div class="line"></div><div class="line"></div><div class="line"></div><div class="line"></div><div class="line"></div><div class="line"></div><div class="mid-dot"></div></div><div class="left-box"><div class="leaf"></div><div class="leaf"></div><div class="leaf"></div></div></div><div class="bom-part"><div class="item" onclick="run(1)">1</div><div class="item" onclick="run(0.5)">2</div><div class="item" onclick="run(0.2)">3</div><div class="item" onclick="run(0)"></div></div></div><script>// 设置动画持续时间function run(num) {document.querySelector(".left-box").style.animationDuration = num + "s";}</script></body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/590050.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[计算机效率] 格式转换工具:格式工厂

3.14 格式转换工具&#xff1a;格式工厂 格式工厂是一款功能强大的多媒体格式转换软件&#xff0c;可以实现音频、视频、图片等多种格式的转换。它支持几乎所有类型的多媒体格式&#xff0c;包括视频、音频、图片、字幕等&#xff0c;可以轻松实现格式之间的转换&#xff0c;并…

Python基础之pandas:字符串操作与透视表

文章目录 一、字符串操作备注&#xff1a;如果想要全部行都能输出&#xff0c;可输入如下代码 1、字符检索2、字符转换3、字符类型判断4、字符调整5、字符对齐与填充6、字符检索7、字符切割8、字符整理 二、透视表1、pd.pivot_table2、多级透视表 一、字符串操作 备注&#xf…

Flask Python:数据库多条件查询,flask中模型关联

前言 在上一篇Flask Python:模糊查询filter和filter_by&#xff0c;数据库多条件查询中&#xff0c;已经分享了几种常用的数据库操作&#xff0c;这次就来看看模型的关联关系是怎么定义的&#xff0c;先说基础的关联哈。在分享之前&#xff0c;先分享官方文档,点击查看 从文档…

2024阿里云老用户服务器优惠价格99元和199元

阿里云服务器租用价格表2024年最新&#xff0c;云服务器ECS经济型e实例2核2G、3M固定带宽99元一年&#xff0c;轻量应用服务器2核2G3M带宽轻量服务器一年61元&#xff0c;ECS u1服务器2核4G5M固定带宽199元一年&#xff0c;2核4G4M带宽轻量服务器一年165元12个月&#xff0c;2核…

JAX深度学习库入门

JAX简介 https://www.bilibili.com/video/BV1Sb4y1b7rK/?spm_id_from333.999.0.0&vd_sourceb2549fdee562c700f2b1f3f49065201b JAX is NumPy wiht Autograd , XLA and Composable (function) transformations, brought together for high-performance machine learning …

HarmonyOS NEXT应用开发之状态管理优秀实践

为了帮助应用程序开发人员提高其应用程序质量&#xff0c;特别是在高效的状态管理方面。本章节面向开发者提供了多个在开发ArkUI应用中常见的低效开发的场景&#xff0c;并给出了对应的解决方案。此外&#xff0c;还提供了同一场景下&#xff0c;推荐用法和不推荐用法的对比和解…

八、从0开始卷出一个新项目之瑞萨RZN2L 3.1.7 debug调试和下载

目录 3.1.7 debug调试和下载 3.1.7.1 官方介绍 3.1.7.2 e2studio debug变量实时监控 3.1.7.3 Iar debug变量实时监控 3.1.7.4 debug经验总结 八、从0开始卷出一个新项目之瑞萨RZN2L 3.1.7 debug调试和下载 3.1.7 debug调试和下载 3.1.7.1 官方介绍 官网&#xff1a; d…

MySQL执行流程

MySQL执行流程 在使用MySQL时&#xff0c;你是否有疑惑&#xff0c;当我们提交一条SQL给MySQL时它到底是如何执行的&#xff1f; 通过了解MySQL的执行流程一定能解开你的疑惑&#x1f914; 总体流程 客户端通过连接器连接MySQL查询执行缓存解析器解析SQL执行器执行SQL调用存…

Transformer模型-用jupyter演示逐步计算attention

学习transformer模型-用jupyter演示如何计算attention&#xff0c;不含multi-head attention&#xff0c;但包括权重矩阵W。 input embedding&#xff1a;文本嵌入 每个字符用长度为5的向量表示&#xff1a; 注意力公式&#xff1a; 1&#xff0c;准备Q K V&#xff1a; 先 生…

车载通信与DDS标准解读系列(4):DDSI-RTPS协议

▎什么是RTPS 在DDS协议中&#xff0c;主要描述了实现数据分发服务的DCPS模型和QoS策略&#xff0c;但是我们还不清楚数据怎样在网络中传输&#xff0c;想要了解这些内容&#xff0c;就需要请出咱们的数据搬运工——RTPS。 RTPS全称是Real-Time Publish-Subscribe Protocol&a…

item_get_desc-获得淘宝商品描述api接口:如何通过接口获取商品信息、订单信息、物流信息可以用于数据分析、商品推荐、行业研究等领域

在当今电商繁荣的时代&#xff0c;淘宝作为中国最大的电商平台之一&#xff0c;拥有海量的商品信息。然而&#xff0c;如何高效地获取并利用这些信息&#xff0c;对于商家和开发者来说都至关重要。幸运的是&#xff0c;淘宝开放平台提供了丰富的API接口&#xff0c;其中包括用于…

基于ZooKeeper的Kafka分布式集群搭建与集群启动停止Shell脚本

下载Kafka压缩包 下方是Kafka官网下载地址&#xff0c;本文使用Kafka 3.0.0在虚拟机环境中搭建分布式集群。 Apache Kafka Downloads link 虽然在Kafka 2.8.0之后可以使用KRaft模式搭建高可用的集群以提高数据处理效率&#xff0c;但是目前还有许多企业依然使用ZooKeeper搭建K…