HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0" />
<title>珠峰培训</title>
<!-- IMPORT CSS -->
<link rel="stylesheet" href="./css/reset.min.css" />
<style>
.tabBox {
margin: 20px auto;
width: 500px;
}
.tabBox .tab {
position: relative;
top: 1px;
}
.tabBox .tab li {
float: left;
margin-right: 10px;
padding: 0 10px;
height: 35px;
line-height: 35px;
font-size: 14px;
border: 1px solid #aaa;
background: #f6f7fb;
cursor: pointer;
}
.tabBox .tab li.active {
background: #fff;
border-bottom-color: #fff;
}
.tabBox div {
display: none;
padding: 10px;
height: 100px;
border: 1px solid #aaa;
background: #fff;
}
.tabBox div.active {
display: block;
}
</style>
</head>
<body>
<section class="tabBox" id="tabBox">
<ul class="tab clearfix">
<li class="active">编程</li>
<li>读书</li>
<li>运动</li>
</ul>
<div class="active">编程可以使我“赚取高薪”</div>
<div>读书可以使我“修身养性”</div>
<div>运动可以使我“身体健康”</div>
</section>
<section class="tabBox" id="tabBox2">
<ul class="tab clearfix">
<li class="active">编程</li>
<li>读书</li>
<li>运动</li>
</ul>
<div class="active">编程可以使我“赚取高薪”</div>
<div>读书可以使我“修身养性”</div>
<div>运动可以使我“身体健康”</div>
</section>
<section class="tabBox" id="tabBox3">
<ul class="tab clearfix">
<li class="active">编程</li>
<li>读书</li>
<li>运动</li>
</ul>
<div class="active">编程可以使我“赚取高薪”</div>
<div>读书可以使我“修身养性”</div>
<div>运动可以使我“身体健康”</div>
</section>
</body>
<script src="./js/jquery.min.js"></script>
</html>
单个方法
$(function () {
// 绑定点击事件
$("li").click(function () {
// console.log(this);//原生对象
// 给点击的元素增加active
$(this).addClass('active').siblings().removeClass("active");
let $index=$(this).index();
$("div").eq($index).addClass('active').siblings().removeClass("active");
});
});
选项卡jq封装
extend方法在jQuery原型上封装函数
$.fn.extend({
tab: function () {
//console.log(this)
//this是tab执行点前面的,this也是我们增选项卡的范围
// #tabbox 里面的li
let _this=this;
$('li', this).click(function () {
//自己点击元素添加样式 移除兄弟元素的active
$(this).addClass('active').siblings().removeClass("active");
let $index = $(this).index();
$('div',_this).eq($index).addClass('active').siblings().removeClass("active");
});
}
});
$("#tabBox").tab();
$("#tabBox2").tab();
$("#tabBox3").tab();