【js基礎】Tab選項卡切換效果實現
阿新 • • 發佈:2019-02-04
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="tab.css">
<script src="tab.js"></script>
<title>Document</title>
</head>
<body>
<div id="tab">
<div id="tab-nav" class="tab-nav">
<ul>
<li class="active"><a href="#">公告</a></li>
<li><a href="#">規則</a></li>
<li><a href="#">論壇</a></li>
<li><a href="#"> 安全</a></li>
<li><a href="#">公益</a></li>
</ul>
</div>
<div id="tab-contain">
<div class="mod">
<ul>
<li><a href="#">走進無聲課堂</a></li >
<li><a href="#">淘寶之行大眾評審</a></li>
<li><a href="#">愛心品牌聯合徵集</a></li>
<li><a href="#">公益機構淘寶攻略</a></li>
</ul>
</div>
<div class="mod" style="display:none">
<ul>
<li><a href="#">[聚焦]金牌賣家再啟航</a></li>
<li><a href="#">[功能]櫥櫃規則升級啦</a></li>
<li><a href="#">[話題]又愛又恨優惠券</a></li>
<li><a href="#">[工具] 購後送店鋪紅包</a></li>
</ul>
</div>
<div class="mod" style="display:none">
<ul>
<li><a href="#">張勇:要玩快樂足球</a></li>
<li><a href="">阿里2000萬馳援災區</a></li>
<li><a href="">旅遊寶讓你邊玩</a></li>
<li><a href="">多行跟進阿里信用貸款</a></li>
</ul>
</div>
<div class="mod" style="display:none">
<ul>
<li><a href="">[通知] “氾濫換新”</a></li>
<li><a href="">[通知]“比特幣嚴管”</a></li>
<li><a href="">[通知]“禁發商品”</a></li>
<li><a href="">[通知]“商品屬性”</a></li>
</ul>
</div>
<div class="mod" style="display:none">
<ul>
<li><a href="#">走進無聲課堂</a></li>
<li><a href="#">淘寶之行大眾評審</a></li>
<li><a href="#">愛心品牌聯合徵集</a></li>
<li><a href="#">公益機構淘寶攻略</a></li>
</ul>
</div>
</div>
</div>
</body>
</html>
css部分
*{
padding:0px;
margin:0px;
list-style: none;
font-size: 14px;
}
#tab{
width:298px;
height:120px;
margin:10px;
border:1px solid #eee;
overflow: hidden;
}
.tab-nav{
width:400px;
position:relative;
height:27px;
}
.tab-nav ul{
position:absolute;
width:301px;
left:-1px;
background-color: #f7f7f7;
}
.tab-nav li{
float:left;
width:58px;
padding: 0 1px;
height:36px;
background-color: #f7f7f7;
border-bottom: 1px solid #eee;
text-align: center;
}
.tab-nav li.active{
background-color: #fff;
border-bottom-color:#fff;
border-left: 1px solid #eee;
border-right: 1px solid #eee;
padding:0px;
font-weight: bolder;
}
li a:link,li a:visited{
text-decoration: none;
color:#000;
}
#tab-contain .mod{
margin:25px 6px 10px 6px;
}
#tab-contain .mod ul li{
float: left;
width:143px;
height:25px;
overflow: hidden;
}
Js部分
function $(id){
return typeof id==='string'?document.getElementById(id):id;
}
window.onload=function(){
var navs=$('tab-nav').getElementsByTagName('li');
var divs=$('tab-contain').getElementsByTagName('div');
// alert(divs.length);
if(navs.length!=divs.length){
return;
}
for(var i=0;i<navs.length;i++){
navs[i].title=i;
navs[i].onmouseover=function(){
for(var j=0;j<navs.length;j++){
navs[j].className="";
divs[j].style.display="none";
}
this.className="active";
divs[this.title].style.display="block";
}
}
}