使用前端三件套来做一个点击事件

news/2025/2/12 3:20:05/

首先我们来做一个HTML部分,这个案例对于新手来说,是比较友好的一个案例,逻辑性也比较简单!废话不说,直接上代码

还是大盒子用container来表示,下面放我们的标题,也可以写自己名字的噢

然后放一个盒子,盒子里面装了circle四个小黑子,分别是用两个类名表示,一个是圆形,一个是颜色

<div class="container"><div class="title">几何.小超前端小窝</div><div class="box"><div class="circle red"></div><div class="circle blue"></div><div class="circle green"></div><div class="circle black"></div></div>
</div>

接下里我们来整CSS部分

我们来给整个页面来清除外边距内边距,加一个c3盒子模型,以免不会被撑开。然后我们这里使用的大量的display布局,比如大盒子主轴,我们让它变成竖着的

circle是圆形的意思,所以我们这里来设置一个圆形只需要将它边框设置百分之五十即可设置圆形

box是我们整个盒子的容器,来装这四个圆圈的,所以我们这块也来使用弹性布局,不管你往里面加多少圆形,都会跟着阅览器屏幕适应宽高!

*,html,body{margin: 0;padding: 0;box-sizing: border-box;
}
body{transition: all .7s ease-in-out;
}
.title{font-family: 'Gill Sans','Gill Sans MT','Trebuchet MS',sans-serif;font-weight: 500;font-size: 44px;padding: 14px;
}
.container{width: 100%;height: 100vh;display: flex;justify-content: center;flex-direction: column;align-items: center;
}
.circle{width: 50px;height: 50px;background-color: red;border-radius: 50%;cursor: pointer;
}
.box{width: 80%;background-color: #f7f7f7;padding: 24px;border-radius: 16px;display: flex;gap: 20px;justify-content: space-evenly;
}
.red{background-color: #ff4848;
}
.blue{background-color: #009eea;
}
.green{background-color: #4fff7b;
}
.black{background-color: #333333;
}

接下来就是JS部分

先还是需要我们获取全部的圆形,然后forEach我们需要变量循环,然后在我们圆形设置一个点击事件,
getComputedStyle函数返回一个对象,该对象表示应用于特定元素的所有样式。在本例中,我们正在析构该对象以仅检索backgroundColor属性。
一旦我们得到了backgroundColor的值,我们就可以使用它了但是我们需要在我们的JavaScript代码。例如,我们可能希望将其更改为不同的颜色或使用它有条件地应用一些其他样式。

最后通过文档来设置使我们点击什么颜色的圆形然后我们的屏幕也会跟着我们点击的圆形一起变色

<script>const circles=document.querySelectorAll('.circle');
//   console.log(circles)circles.forEach(circles=>{circles.addEventListener('click',({target})=>{const { backgroundColor } = getComputedStyle(target)// console.log(computedStyle.style.backgroundColor)document.body.style.backgroundColor=backgroundColor})})
</script>

最后是源码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./css/style.css">
</head>
<body><div class="container"><div class="title">几何.小超前端小窝</div><div class="box"><div class="circle red"></div><div class="circle blue"></div><div class="circle green"></div><div class="circle black"></div></div>
</div>
<script>const circles=document.querySelectorAll('.circle');
//   console.log(circles)circles.forEach(circles=>{circles.addEventListener('click',({target})=>{const { backgroundColor } = getComputedStyle(target)// console.log(computedStyle.style.backgroundColor)document.body.style.backgroundColor=backgroundColor})})
</script>
</body>
</html>

css使用外嵌样式链接,

*,html,body{margin: 0;padding: 0;box-sizing: border-box;
}
body{transition: all .7s ease-in-out;
}
.title{font-family: 'Gill Sans','Gill Sans MT','Trebuchet MS',sans-serif;font-weight: 500;font-size: 44px;padding: 14px;
}
.container{width: 100%;height: 100vh;display: flex;justify-content: center;flex-direction: column;align-items: center;
}
.circle{width: 50px;height: 50px;background-color: red;border-radius: 50%;cursor: pointer;
}
.box{width: 80%;background-color: #f7f7f7;padding: 24px;border-radius: 16px;display: flex;gap: 20px;justify-content: space-evenly;
}
.red{background-color: #ff4848;
}
.blue{background-color: #009eea;
}
.green{background-color: #4fff7b;
}
.black{background-color: #333333;
}

喜欢可以给个三连噢!!!!!!


http://www.ppmy.cn/news/229798.html

相关文章

java编程cpu选i5还是i7_玩游戏处理器选i5还是i7?认定九代更重要

玩游戏处理器选i5还是i7&#xff1f;认定九代更重要 2019-06-15 17:21:38 3点赞 0收藏 0评论 2019年已经过去接近三分之一&#xff0c;时间过得很快。作为一个游戏玩家&#xff0c;我心里最期待的第九代酷睿处理器什么时候能够登陆到游戏本上。 做笔记本领域上&#xff0c;英特…

i7 网站服务器,i7服务器地址

i7服务器地址 内容精选 换一换 Atlas 500 Pro 智能边缘服务器(型号 3000)安装上架、服务器基础参数配置、安装操作系统等操作请参见《Atlas 500 Pro 智能边缘服务器 用户指南(型号 3000)》,安装操作系统完成后,配置业务网口IP地址,请参见配置网卡IP地址。Atlas 500 Pro 智能…

【JavaEE】简单前后端分离小项目-表白墙

plus版表白墙&#xff01;✿✿ヽ(▽)ノ✿ 文章目录 JavaEE & 简单前后端分离小项目 - 表白墙1. body格式约定 - 应用层协议2. 后端处理请求2.1 模板2.2 doGet方法2.3 doPost方法 3. 前端制作请求并解析响应3.1 原前端页面的代码3.2 刷新时发送GET请求3.3 点击发送时构造Pos…

如何烙饼又软又好吃 家常烙饼的做法讲解

如何烙饼又软又好吃?烙饼的主要原料是面粉&#xff0c;是深受百姓喜爱的汉族传统面食之一&#xff0c;面粉常用的加工方法有很多&#xff0c;制作方法不同&#xff0c;营养素损失程度也不同。烙饼的营养素损失较少。下面&#xff0c;我们就来看看家常烙饼的做法讲解。 如何烙…

【cropperjs】优秀、优雅的前端图片裁剪库

下载 npm i cropperjsnpm官网- https://www.npmjs.com/package/cropperjs cropperjs关键参数 aspectRatio 图片裁剪比例 默认值 &#xff1a;NaN作用&#xff1a;图片裁剪比例值&#xff1a;自定义裁剪比例&#xff0c;例如1 / 1 , 4 / 3 , 16 / 9等 viewMode 裁剪模式 默认…

《最高人民法院关于审理利用信息网络侵害人身权益民事纠纷案件适用法律若干问题的规定》

《最高人民法院关于审理利用信息网络侵害人身权益民事纠纷案件适用法律若干问题的规定》已于2014年6月23日由最高人民法院审判委员会第1621次会议通过&#xff0c;现予公布&#xff0c;自2014年10月10日起施行。 最高人民法院 2014年8月21日 法释〔2014〕11号 最高人民法院关…

什么是测试驱动开发?测试驱动开发有什么优点?

目录 前言 什么是TDD或测试驱动开发&#xff1f; 什么是软件单元测试&#xff1f; 什么是TDD&#xff1f; 测试驱动开发的好处 最后的想法 前言 测试是任何软件开发项目中最重要的步骤之一。如果跳过此过程&#xff0c;则结果可能是灾难性的-对项目和公司而言。但是什么时…

SpringCloud微服务架构 --- 基础篇

一、认识微服务 1.1、服务架构演变 1.1.1、单体架构 单体架构&#xff1a;将业务的所有功能集中在一个项目中开发&#xff0c;打成一个包部署。 单体架构的优缺点如下&#xff1a; 优点&#xff1a; 架构简单部署成本低 缺点&#xff1a; 耦合度高&#xff08;维护困难、…