js,jQ实现简单选项卡
html
<div class="header1"> <div class="header-nei" id="header-nei"> <div class="neiClick">第一场</div> <div>第二场</div> <div>第三场</div> <div>第四场</div> <div>最终排名</div> </div> </div> <div class="header2"> <div class="header-nei2" id="header-nei2"> <div class="neiClick2">一区</div> <div>二区</div> <div>三区</div> <div>四区</div> <div>五区</div> </div> </div>
CSS(样式可能有点丑自己修改一下)
.header-nei div,.header-nei2 div{
background: #5C5C5C;
margin-left: -2%;
width: 20%;
height: 50px;
line-height: 50px;
text-align: center;
font-size: 14px;
color: #FFFFFF;
display: inline-block;
}
.header-nei .neiClick{
background: #ecab59;
}
.header-nei2 div{
background: #ecab59;
display: none;
}
.header-nei2 .neiClick2{
display: block;
width: 8%;
margin: 0 10%;
color: #ecab59;
background: #FFFFFF;
border-bottom: 1px solid #ECAB59;
}
JS
var btn = document.getElementById("header-nei")
var nDiv = btn.getElementsByTagName("div")
var btn2 = document.getElementById("header-nei2")
var nDiv2 = btn2.getElementsByTagName("div")
for (var i = 0;i<nDiv.length;i++) {
nDiv[i].index = i //为标题div添加index
/*循环遍历添加点击事件*/
nDiv[i].onclick = function(){
for (var j = 0;j<nDiv.length;j++) {
/*循环遍历将标题div的样式移除*/
nDiv[j].className = ''
}
/*将neiClick样式添加到点击的那个div上*/
this.className="neiClick";
var num=this.index; //将index保存到num中
for (var k = 0;k<nDiv2.length;k++){
/*循环遍历将内容div的样式移除*/
nDiv2[k].className=""
}
//根据索引设置内容div的类为 neiClick2 将他显示出来
nDiv2[num].className = "neiClick2"
}
}
jQ实现选项卡
HTML
<div class="nav"> <div class="nav_nei"> <div class="neiClick">中式古典</div> <div>欧式浪漫</div> <div>美式田园</div> </div> </div> <ul id="about_cont"> <li class="cont_block"> 1 </li> <li> 2 </li> <li> 3 </li> </ul>
CSS(关键样式)
.nav_nei .neiClick{ color: #FBBE40; border-bottom: 1px solid #FBBE40; } #about_cont .cont_block{ display: block; }
JS
<script type="text/javascript"> $(function () { //使用后代选择器.nav_nei div,选中导航元素,并给他们添加click方法 $(".nav_nei div").click(function () { //使用this关键字选中当前单击的对象,增加样式neiClick,并使用siblings方法找到该对象的所有同级元素,移除样式neiClick $(this).addClass("neiClick").siblings().removeClass("neiClick"); //使用后代选择器.nav_nei div,选中内容区元素,全部移除样式cont_block,再使用eq方法找到导航区li对象的索引数字,同时作为内容区的索引,增加样式cont_block var index = $(this).index(); $("#about_cont li").removeClass("cont_block").eq(index).addClass("cont_block"); }); }); </script>
有问题可直接留言,望各位与我都可以成为技术大牛。

浙公网安备 33010602011771号