原生js选项卡:2021-06-24 css选项卡的实现
思路
在鼠标点击事件中,为当前鼠标选中的li添加active类(含有选中的样式),
获取此li的索引
利用此索引,显示对应的第index个底部box li内容
代码
<style>
li {
list-style-type: none;
}
.header {
display: flex;
}
.header li {
width: 98px;
height: 30px;
text-align: center;
line-height: 30px;
border: 1px solid #000;
background: pink;
}
.box li {
width: 500px;
height: 200px;
background: yellow;
display: none;
}
.header .active {
background: red;
}
.box .active {
display: block;
}
</style>
<body>
<div class="header">
<li class="active">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</div>
<div class="box">
<li class="active">111</li>
<li>222</li>
<li>333</li>
<li>444</li>
<li>555</li>
</div>
<script>
$(".header>li").click(function() {
// 为当前选中的li添加类,同时为其兄弟节点删除类
$(this).addClass("active").siblings().removeClass("active");
// 获取当前选中li的索引
// console.log($(this).index());
// 用获取到的索引,显示对应的.box>li,并隐藏其兄弟节点
$(".box>li").eq($(this).index()).css("display", "block").siblings().css("display", "none");
//实现顶部选项卡和底部内容栏的同步切换
})
</script>
</body>