使用jquery实现div的tab切换实例代码

  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);