Posted in Javascript onMay 27, 2013
jQuery实现Tab切换 接触jQ不久以前的js代码来写的简单效果现在用jQ来写:
HTML代码:
<div id="sidebar-tab"> <div id="tab-title"> <h3><span class="selected">最新评论</span><span>近期热评</span><span>随机文章</span></h3> </div> <div id="tab-content"> <ul><li>1234567890-1</li></ul> <ul class="hide"><li>1234567890-2</li></ul> <ul class="hide"><li>1234567890-3</li></ul> </div> </div>
css代码:
#sidebar-tab{border:1px solid #ccf;margin-bottom:1.5em;overflow:hidden;} #tab-title h3{color:#666;font-size:15px;font-weight:400;} #tab-title .selected{color:#356aa0;border-bottom:0px;} /*标题被选中时的样式*/ #tab-title span{padding:5px 9px 5px 10px;border:1px solid #ccf;border-right:0px;margin-left:-1px;cursor:pointer;} #tab-content .hide{display:none;} /*默认让第一块内容显示,其余隐藏*/ #tab-content ul{padding:5px 10px;overflow:hidden;} #tab-content ul li{padding-top:5px;height:20px;}
jQ代码:
<script language="javascript"> $('#tab-title span').click(function(){ $(this).addClass("selected").siblings().removeClass();//removeClass就是删除当前其他类;只有当前对象有addClass("selected");siblings()意思就是当前对象的同级元素,removeClass就是删除; $("#tab-content > ul").hide().eq($('#tab-title span').index(this)).show(); }); </script>
用jQ来写很方便;先是找到ID中的子元素添加事件click引入函数;找到同级元素后removeClass();让其他同级元素this时display:”none“;
下面是原来的jQ代码:
<script> $('#tab-title span').click(function(){ $(this).addClass("selected").siblings().removeClass(); $("#tab-content > ul").slideUp('1500').eq($('#tab-title span').index(this)).slideDown('1500') }); </script>
当你触发当前事件后再点击当前事件还会触发它;没有必要点击当前事件时还触发事件(this);
使用jquery实现div的tab切换实例代码
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@