您的位置:首页 > Web前端 > JavaScript

WEB前端开发学习----12. JavaScript 选项卡效果

2014-08-24 05:43 756 查看
选项卡无处不在,记录一个简单的JS实现方法, 仿网易效果。

当两个边框紧挨时,会变粗, 颜色也会变深,解决办法就是:

margin-left:-1px, 按需修改top,left,right,bottom.

<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
</head>
<style type="text/css">
body,div,ul,li,a{margin:0;padding:0;list-style: none;text-decoration: none;font-size: 14px;color:black;}

#tagCard{
width:300px;
height:300px;
margin: 100px;
}
#title a{
display: block;
}
#title li{
float: left;
width:98px;
height:28px;
background: #F8F8F8;
border-top:2px solid #206F96;
border-right: 1px solid #CCC;
border-left: 1px solid #CCC;
border-bottom: 1px solid #CCC;
line-height: 28px;
text-align: center;
margin-left: -1px;
}
#title .titleShow{
background: white;
border-bottom: none;
font-weight: bold;
}

#content div{
clear:both;
display: none;

}
#content .contentShow{
display: block;
}
</style>

<body>
<div id="tagCard">
<div id="title">
<ul>
<li class="titleShow" onmouseover="show(0)"><a href="#">视频</a></li>
<li onmouseover="show(1)"><a href="#">图片</a></li>
<li onmouseover="show(2)"><a href="#">新闻</a></li>
</ul>

</div>
<div id="content">
<div class="contentShow">
<ul>
<li>视频 视频 视频 视频 视频 视频</li>
<li>视频 视频 视频 视频 视频 视频</li>
<li>视频 视频 视频 视频 视频 视频</li>
<li>视频 视频 视频 视频 视频 视频</li>
<li>视频 视频 视频 视频 视频 视频</li>
<li>视频 视频 视频 视频 视频 视频</li>
<li>视频 视频 视频 视频 视频 视频</li>

</ul>
</div>

<div>
<ul>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>
<li>图片 图片 图片 图片 图片 图片</li>

</ul>
</div>

<div>
<ul>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>
<li>新闻 新闻 新闻 新闻 新闻</li>

</ul>
</div>
</div>
</div>

<script type="text/javascript">
var tObj=document.getElementById("title").getElementsByTagName("li");
var cObj=document.getElementById("content").getElementsByTagName("div");

function show(num){
for(var i=0;i<tObj.length;i++){
if(i==num){
tObj[num].className="titleShow";
cObj[num].style.display="block";
}else{
tObj[i].className="";
cObj[i].style.display="none";
}
}
}
</script>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: