基于jquery,9行js轻松实现tab控件



http://www.oschina.net/code/snippet_273800_15428


[代码]核心代码 


/**
  * 考虑到tab和pane有可能被动态的添加和删除,
  * 所以每次都废点时间去查找先前被激活的tab
  */
var tab = function (tabId,activeId){
     $( "#" +tabId).delegate( "li:not(#" +activeId+ ")" , "click" , function (){
         $( "#" +$( "#" +activeId).attr( "tar" )).css( "display" , "none" );
         $( "#" +activeId).removeAttr( "id" );
         
         $( this ).attr( "id" ,activeId);
         $( "#" +$( this ).attr( "tar" )).css( "display" , "block" );
     });
};



demo代码 


<html>
     <head>
         <meta http-equiv= "Content-Type" content= "text/html; charset=UTF-8" >
         <script type= "text/javascript" src= "index.js" ></script>
         <script type= "text/javascript" src= "jquery-1.8.2.js" ></script>
     </head>
     <style>
         li{
             border:1px solid #b5e2f3;
             border-bottom:0px;
             float:left;
             width:100px;
             height:25px;
             margin:0 7px;
             background: #F1FEF3;
             padding:9px 0 0 0;
             text-align:center;
             color: #33a3dc;
             cursor:pointer;
         }
         ul{
             width:800;
             height:36px;
             border-bottom:1px solid #b5e2f3;}
         #selected{
             background: #FFF!important;
             border-bottom:2px solid #FFF!important;
         }
         ul{margin:-1px;}
         #cate1,#cate2, #cate3, #cate4, #cate5{
             clear:both;
             height:300px;
             background: #FFFFFF;
             width:800px;
             height:100px;
             padding:25px;
             border:1px solid #b5e2f3;
         }
     </style>
     <body>
         <div id= "tab" >
             <ul>
                 <li tar= "cate1" id= "selected" >李开复</li>
                 <li tar= "cate2" >linus</li>
                 <li tar= "cate3" >李白</li>
                 <li tar= "cate4" >孔子</li>
             </ul>
         </div>
         <div>
             <div id= "cate1" style= "display:block;" >
                         李开复与中国大学生的近距离接触始于1990年,那时他受联合国邀请来华演讲两周。他到了很多高校,每次演讲结束时,
                         满屋子的学生都不愿离去。他们不停地抛出问题,想知道怎样才能成为一个被微软这样世界顶级公司认可的人才。“一定要帮帮他们。”
                         李开复说,自己被大学生渴望成才的热情感动了。之后,只要学生们给他写信,或者邀请他做演讲,他能做的,都会不遗余力。</div>
             <div id= "cate2" style= "display:none;" >
             Linus Torvalds,Linux核心的创作者,于1969 年12月28 日出生在芬兰的赫尔辛基。“有些人生来就具有统率百万
                         人的领袖风范;另一些人则是为写出颠覆世界的软件而生。唯一一个能同时做  linus到这两者的人,就是托瓦兹。”美国《时代》
                         周刊对Linux之父李纳斯·托瓦兹(Linus Torvalds)给出了极高的评价。甚至,在《时代》周刊根据读者投票评选出的二十世纪
             100位最重要人物中, 李纳斯居然排到了第15位,而从20世纪的最后几年就开始霸占全球首富称号的盖茨不过才是第17位。</div>
             <div id= "cate3" style= "display:none;" >
                         小隐慕安石。远游学子平。天书访江海。云卧起咸京。入侍瑶池宴。出陪玉辇行。夸胡新赋作。
                         谏猎短书成。但奉紫霄顾。非邀青史名。庄周空说剑。墨翟耻论兵。拙薄遂疏绝。归闲事耦耕。
                         顾无苍生望。空爱紫芝荣。寥落暝霞色。微茫旧壑情。秋山绿萝月。今夕为谁明。
              </div>
             <div id= "cate4" style= "display:none;" >
                         君于惠而不费,劳而不怨,欲而不贪,泰而不骄,威而不猛。
             ……因民之利而利之,斯不亦惠而不费乎?择可劳而劳之,又谁怨?欲仁而得仁,又焉贪?君子无众寡、
                         无小大、无敢慢,斯不亦泰而不骄乎?君子正其衣冠,尊其瞻视,俨然人望而畏之,斯不亦威而不猛乎?</div>
         </div>
     </body>
     <script>
         tab( "tab" , "selected" );
     </script>
</html>












评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值