jquery實(shí)現(xiàn)具有嵌套功能的選項(xiàng)卡
關(guān)于選項(xiàng)卡功能大家一定都不會(huì)陌生,無非就是鼠標(biāo)點(diǎn)擊或者懸浮能夠切換相關(guān)的內(nèi)容。
通常情況下,大家見到的選項(xiàng)卡都是沒有嵌套功能的,也就是說就是完成了一層切換效果,本章節(jié)分享一段代碼實(shí)例,實(shí)現(xiàn)了選項(xiàng)卡的嵌套功能,也就是選項(xiàng)卡中嵌套有選項(xiàng)卡功能,也就能夠容納更多的內(nèi)容。
代碼如下:
<head>
<meta charset="gb2312">
<title>jquery選項(xiàng)卡</title>
<style type="text/css">
body, ul, li, div, a{
margin:0px;
padding:0px;
}
body{
margin-top:10px;
margin-left:15px;
}
#all{
border-left:1px solid #ccc;
border-right:1px solid #ccc;
border-bottom:1px solid #ccc;
width:255px;
}
#title li{
float:left;
list-style:none;
width:50px;
border-top:2px solid #f60;
border-right:1px solid #ccc;
text-align:center;
padding-top:3px;
}
#title li:last-child{
border-right:1px solid #fff;
}
.new{
border-bottom:1px solid #fff;
color:#f60;
}
.old{
border-bottom:1px solid #ccc;
}
#content{
clear:both;
}
#content ul{
margin-left:5px;
list-style:none;
float:left;
}
#content li{
width:40px;
height:30px;
background-color:#f60;
text-align:center;
color:#fff;
}
.inContent{
width:205px;
height:90px;
background-color:#f6c;
margin-left:50px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
$(function(){
$("#title li:first").addClass("new").siblings().addClass("old");
$("#content div:first").show().siblings().hide();
$(".inContent:first").show().siblings().hide();
$("#title li").click(function(){
$(this).addClass("new").removeClass("old").siblings().addClass("old").removeClass("new");
$(".info").hide().eq($("#title li").index(this)).show();
$(".info div:first-child").show().siblings().hide();
});
$(".info li").mouseover(function(){
$(this).css("color","#20f");
$(".inContent").hide().eq($(".info li").index(this)).show();
});
$(".info li").mouseout(function(){
$(this).css("color","#fff");
});
});
</script>
</head>
<body>
<div id="all">
<div id="title">
<ul>
<li>要聞</li>
<li>國(guó)內(nèi)</li>
<li>時(shí)尚</li>
<li>旅游</li>
<li>科技</li>
</ul>
</div>
<div id="content">
<div style="clear:both;" class="info">
<ul>
<li>01</li>
<li>02</li>
<li>03</li>
</ul>
<div>
<div class="inContent">A1</div>
<div class="inContent">B1</div>
<div class="inContent">C1</div>
</div>
</div>
<div class="info">
<ul>
<li>01</li>
<li>02</li>
<li>03</li>
</ul>
<div>
<div class="inContent">A2</div>
<div class="inContent">B2</div>
<div class="inContent">C2</div>
</div>
</div>
<div class="info">
<ul>
<li>01</li>
<li>02</li>
<li>03</li>
</ul>
<div>
<div class="inContent">A3</div>
<div class="inContent">B3</div>
<div class="inContent">C3</div>
</div>
</div>
<div class="info">
<ul>
<li>01</li>
<li>02</li>
<li>03</li>
</ul>
<div>
<div class="inContent">A4</div>
<div class="inContent">B4</div>
<div class="inContent">C4</div>
</div>
</div>
<div class="info">
<ul>
<li>01</li>
<li>02</li>
<li>03</li>
</ul>
<div>
<div class="inContent">A5</div>
<div class="inContent">B5</div>
<div class="inContent">C5</div>
</div>
</div>
</div>
</div>
</body>
</html>
上面的代碼實(shí)現(xiàn)了選項(xiàng)卡的嵌套功能,下面介紹一下它的實(shí)現(xiàn)過程。
一.實(shí)現(xiàn)原理:
原理其實(shí)非常的簡(jiǎn)單,其實(shí)就是大的選項(xiàng)卡里面套了一個(gè)小的選項(xiàng)卡,先進(jìn)行大的選項(xiàng)卡的切換,然后再進(jìn)行小的選項(xiàng)卡的切換,就是這么簡(jiǎn)單,這里就不多介紹了,具體可以看代碼注釋。
二.代碼注釋:
1.$(function(){}),文檔結(jié)構(gòu)完全加載完畢再去執(zhí)行函數(shù)中的代碼。
2.$("#title li:first").addClass("new").siblings().addClass("old"),在默認(rèn)狀態(tài)下,為id屬性值為title的元素下第一個(gè)li元素添加名為new的class類,然后為其他的兄弟li元素添加old的class類。也就是在默認(rèn)狀態(tài)下橫向的選項(xiàng)卡第一個(gè)字體是紅色,其他的都是黑色。
3.$("#content div:first").show().siblings().hide(),將id為content下第一個(gè)div設(shè)置為顯示,其他的兄弟元素隱藏。
4.$(".inContent:first").show().siblings().hide(),將class屬性值為inContent的第一個(gè)元素設(shè)置為顯示,兄弟元素隱藏。
5.$("#title li").click(function(){}),為相應(yīng)的li元素注冊(cè)click事件處理函數(shù)。
6.$(this).addClass("new").removeClass("old").siblings().addClass("old").removeClass("new"),如果點(diǎn)擊頂部的li元素的話,會(huì)為當(dāng)前l(fā)i元素添加名為new的class類,然后刪除名為old的class類,然后將其他兄弟元素添加名為old的class類,刪除名為new的class類。
7.$(".info").hide().eq($("#title li").index(this)).show(),首先將class名為info的元素隱藏,然后將對(duì)應(yīng)索引的元素顯示。
8.$(".info div:first-child").show().siblings().hide(),將info下面的div元素下的第一個(gè)子元素設(shè)置為顯示,其他的元素隱藏。
以上就是本文的詳細(xì)內(nèi)容,希望對(duì)大家實(shí)現(xiàn)jquery選項(xiàng)卡有所幫助。
相關(guān)文章
jQuery插件FusionCharts繪制的3D雙柱狀圖效果示例【附demo源碼】
這篇文章主要介紹了jQuery插件FusionCharts繪制的3D雙柱狀圖效果,涉及jQuery使用插件FusionCharts結(jié)合xml數(shù)據(jù)繪制的3D雙柱狀圖的相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
使用jQuery同時(shí)控制四張圖片的伸縮實(shí)現(xiàn)代碼
控制圖片的伸縮想必大家都有看到過吧,不過同時(shí)控制四張圖片的伸縮卻不是那么的常見吧,接下來為大家詳細(xì)介紹下jQuery同時(shí)控制四張圖片的伸縮2013-04-04
Jquery+JSon 無刷新分頁實(shí)現(xiàn)代碼
基于jquery+json格式文件的無刷新分頁實(shí)現(xiàn)代碼,需要的朋友可以參考下。2010-04-04
jQuery時(shí)間插件jquery.clock.js用法實(shí)例(5個(gè)示例)
這篇文章主要介紹了jQuery時(shí)間插件jquery.clock.js用法,結(jié)合5個(gè)實(shí)例簡(jiǎn)單分析了jQuery時(shí)間插件jquery.clock.js的具體使用技巧,需要的朋友可以參考下2016-01-01
jQuery實(shí)現(xiàn)行文字鏈接提示效果的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)行文字鏈接提示效果的方法,實(shí)例分析了jQuery操作文字提示效果的方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
jQuery實(shí)現(xiàn)徑向動(dòng)畫菜單效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)徑向動(dòng)畫菜單效果的相關(guān)資料,需要的朋友可以參考下2015-07-07

