当前位置: 首页 > news >正文

Day32事件委托版本tab栏切换

<!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>tab栏切换</title><style>* {margin: 0;padding: 0;}.tab {width: 590px;height: 340px;margin: 20px;border: 1px solid #e4e4e4;}.tab-nav {width: 100%;height: 60px;line-height: 60px;display: flex;justify-content: space-between;}.tab-nav h3 {font-size: 24px;font-weight: normal;margin-left: 20px;}.tab-nav ul {list-style: none;display: flex;justify-content: flex-end;}.tab-nav ul li {margin: 0 20px;font-size: 14px;}.tab-nav ul li a {text-decoration: none;border-bottom: 2px solid transparent;color: #333;}.tab-nav ul li a.active {border-color: #e1251b;color: #e1251b;}.tab-content {padding: 0 16px;}.tab-content .item {display: none;}.tab-content .item.active {display: block;}</style>
</head><body><div class="tab"><div class="tab-nav"><h3>每日特价</h3><ul><li><a class="active" href="javascript:;">精选</a></li><li><a href="javascript:;" data-id="1">美食</a></li><li><a href="javascript:;" data-id="2">百货</a></li><li><a href="javascript:;" data-id="3">个护</a></li><li><a href="javascript:;" data-id="4">预告</a></li></ul></div><div class="tab-content"><div class="item active"><img src="./images/tab00.png" alt="" /></div><div class="item"><img src="./images/tab01.png" alt="" /></div><div class="item"><img src="./images/tab02.png" alt="" /></div><div class="item"><img src="./images/tab03.png" alt="" /></div><div class="item"><img src="./images/tab04.png" alt="" /></div></div></div><script>// 采取事件委托形式进行tab栏切换// 1.获取ul的元素,不用对li进行循环了const ul = document.querySelector('.tab-nav ul')// 2.添加事件ul.addEventListener('click', function (e) {// 需求:只有点击a时才会进行添加类与删除类的操作if (e.target.tagName === 'A') {// 依旧先删除原有的activedocument.querySelector('.tab-nav .active').classList.remove('active')// 为当前元素添加新的类// 这里this指向的是ul,不能用,a这里是e.targete.target.classList.add('active')// 下面大盒子模块const i = +e.target.dataset.iddocument.querySelector('.tab-content .active').classList.remove('active')document.querySelector(`.tab-content .item:nth-child(${i + 1})`).classList.add('active')}})</script></body></html>
http://www.jsqmd.com/news/362780/

相关文章:

  • 基于SpringBoot的画师约稿平台毕业设计
  • 基于SpringBoot的物流信息管理系统毕业设计
  • 敏捷转型如何选择工具?2025年-2026年Jira替代软件推荐与评价,解决学习成本与本地化适配痛点 - 品牌推荐
  • 本地达成斯坦福小镇(利用大语言模型使虚拟角色自主发展剧情)类似工程“Microverse”
  • 2026天津可靠红木家具回收品牌推荐指南 - 优质品牌商家
  • 支付宝立减金回收三大误区解析与避坑指南 - 京顺回收
  • 大规模复杂需求如何管理?2025年-2026年需求管理系统推荐与排名,直击可视化与闭环追溯核心痛点 - 品牌推荐
  • 数据中台建设方法论:大数据项目成功的关键要素
  • 如何为强监管场景选需求管理软件?2025年-2026年需求管理软件推荐与评测,直击合规与追溯痛点 - 品牌推荐
  • 2026.2.9 模拟赛
  • FPGA实现双线性插值缩放:代码与实现详解
  • SpringBoot配置终极指南:从入门到精通
  • Command Injection(命令注入)漏洞及其防御策略
  • 2026年2月气体分析仪厂商推荐,工业气体检测设备厂家口碑榜 - 品牌鉴赏师
  • BISHI29 小红的排列构造①
  • 2026年红木家具回收公司权威推荐:紫檀家具回收、红木家具上门回收、红木家具回收价格、红木家具回收平台选择指南 - 优质品牌商家
  • FastAPI系列(24):ORM操作之删除接口开发
  • 强监管行业如何确保项目合规?2025年-2026年项目集管理系统推荐与评价,解决审计追溯与安全管控核心难题 - 品牌推荐
  • 2025年-2026年瀑布管理系统推荐:大型复杂项目场景深度评测,解决流程割裂与合规痛点并附排名 - 品牌推荐
  • 如何为跨组织协同选型?2025年-2026年项目管理平台全面评价与推荐,直击效率与合规核心痛点 - 品牌推荐
  • 基于深度学习的AI原生决策支持模型构建指南
  • 2026智慧校园管理平台推荐榜 适配园所开学缴费场景 - 优质品牌商家
  • 微服务通信优化:AI原生应用的gRPC集成指南
  • 【排版救星】如何优雅地将图片插入 Word 表格?——拒绝图片乱跑与显示不全
  • 安卓离线打包
  • 春节不返乡可以做什么?写于2026年2月9日(第七周第I天)
  • 大数据领域ClickHouse的索引优化策略
  • 基于SpringBoot+Vue的求职招聘平台设计与实现
  • Java高频面试题:Java中变量和常量有什么区别?
  • 实用指南:好消息,.NET 10 正式发布,更智能、更安全、更高性能的统一开发平台!