几行JS实现一个Tab选项卡效果
最终效果截图
上代码
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Tab选项卡</title> <style> /* 样式 */ .tab { display: flex; flex-direction: column; align-items: center; margin-top: 50px; } .tab-header { display: flex; margin-bottom: 20px; } .tab-header-item { padding: 10px; margin-right: 10px; border: 1px solid #ccc; cursor: pointer; } .tab-header-item.active { background-color: #ccc; } .tab-content { display: none; padding: 20px; border: 1px solid #ccc; width: 400px; height: 200px; } .tab-content.active { display: block; } </style> </head> <body> <div class="tab"> <div class="tab-header"> <div class="tab-header-item active" onclick="changeTab(0)">选项卡1</div> <div class="tab-header-item" onclick="changeTab(1)">选项卡2</div> <div class="tab-header-item" onclick="changeTab(2)">选项卡3</div> </div> <div class="tab-content active">内容1</div> <div class="tab-content">内容2</div> <div class="tab-content">内容3</div> </div> <script> // JS代码 function changeTab(index) { // 获取所有选项卡头部元素 var headerItems = document.querySelectorAll('.tab-header-item'); // 获取所有选项卡内容元素 var contentItems = document.querySelectorAll('.tab-content'); // 遍历所有选项卡头部元素 for (var i = 0; i < headerItems.length; i++) { // 如果当前元素是选中的元素 if (i === index) { // 给当前元素添加active类名 headerItems[i].classList.add('active'); // 给当前元素对应的内容元素添加active类名 contentItems[i].classList.add('active'); } else { // 否则移除active类名 headerItems[i].classList.remove('active'); contentItems[i].classList.remove('active'); } } } </script> </body> </html>
相关热词: Tab选项卡
相关内容
这些是最新的
热门排行
- THINKPHP5+GatewayWorker+Workerman 开发在线客服系统
- 在手机浏览器网页中点击链接跳转到微信界面的方法
- 尊云网站目录系统 ThinkPHP5网站分类目录程序 v2.2.221011
- CentOS 7安装shadowsock(一键安装脚本)
- AdminTemplate 基于LayUI 2.4.5实现的网站后台管理模板
- 用NW.js(node-webkit)开发多平台的桌面客户端
- PHP生成随机昵称/用户名
- THINKPHP5网站分类目录程序 尊云网站目录系统
- 织梦(DEDECMS)微信支付接口 微信插件
- 基于LayUI开发的 网站后台管理模板 BeginnerAdmin
- 响应式后台网站模板 - AMA.ADMIN
- layuiAdmin后台管理模板 Iframe版
- LayUI 1.0.9 升级 至 LayUI 2.1.4 方法
- 简洁清爽的会员中心模板
- jQuery幸运大转盘抽奖活动代码