1.获取选项卡的标签数组及选项卡内容的数组
var $div_li = $("div.tab_menu ul li");
var $div_div = $("div.tab_box>div");
2.给选项卡的标签添加事件一:当单击当前选项卡是时,当前<li>元素高亮,同时去掉其他同辈<li>元素的高亮
$div_li.click(function(){
$(this).addClass("selected")//当前li元素高亮
.siblings().removeClass("selected");//去掉其他兄弟li元素的高亮
});
3.给选项卡的标签添加事件二:当前<li>元素对应的<div>元素内容显示,同时隐藏其他同辈<div>元素的高亮
$div_li.click(function(){
var index = $div_li.index(this);//获取当前单击的li元素在全部li元素中的索引
$div_div.eq(index).show()//显示li元素对应的div元素
.siblings().hide();//隐藏其他几个同辈的div元素
});
4.添加鼠标划过标签时的效果
$div_li.hover(function(){//事件交互hover(over,out)
$(this).addClass("hover");},function(){
$(this).removeClass("hover")
});
完整代码:
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>网页选项卡</title>
<script type="text/javascript" src="jquery-1.3.1.js"></script>
<script type="text/javascript">
$(function(){
var $div_li = $("div.tab_menu ul li");
var $div_div = $("div.tab_box>div");
$div_li.click(function(){
$(this).addClass("selected")//当前li元素高亮
.siblings().removeClass("selected");//去掉其他兄弟li元素的高亮
var index = $div_li.index(this);//获取当前单击的li元素在全部li元素中的索引
$div_div.eq(index).show()//显示li元素对应的div元素
.siblings().hide();//隐藏其他几个同辈的div元素
}).hover(function(){//事件交互hover(over,out)
$(this).addClass("hover");},function(){
$(this).removeClass("hover")
});
})
</script>
<style type="text/css">
*{ margin:0; padding:0;}
body { font:12px/19px Arial, Helvetica, sans-serif; color:#666;}
.tab { width:240px;margin:50px;}
.tab_menu { clear:both;}
.tab_menu li { float:left; text-align:center; cursor:pointer; list-style:none; padding:1px 6px; margin-right:4px; background:#F1F1F1; border:1px solid #898989; border-bottom:none;}
.tab_menu li.hover { background:#DFDFDF;}
.tab_menu li.selected { color:#FFF; background:#6D84B4;}
.tab_box { clear:both; border:1px solid #898989; height:100px;}
.hide{display:none}
</style>
</head>
<body>
<div class="tab">
<div class="tab_menu">
<ul>
<li class="selected">时事</li>
<li>体育</li>
<li>娱乐</li>
</ul>
</div>
<div class="tab_box">
<div>时事</div>
<div class="hide">体育</div>
<div class="hide">娱乐</div>
</div>
</div>
</body>
</html>