ZenOven's Archivers

From zenoven on 2011-09-23 18:15:22

jQuery Tab选项卡特效代码

目前Tab选项卡效果已经是遍地开花了,前一段在家闲着没事也鼓捣了个,话不多说,上代码,效果可看此jQuery Tab选项卡Demo页面

[code lang="html" title="HTML代码"]
<div class="tab">
<ul class="clearfix">
<li class="current"><a href="#">标签1</a></li>
<li><a href="#">标签2</a></li>
<li><a href="#">标签3</a></li>
</ul>
<div class="current">
<img src="images/upload/1.jpg" alt="1.jpg" /></div>
<div>
<img src="images/upload/2.jpg" alt="2.jpg" /></div>
<div>
<img src="images/upload/3.jpg" alt="3.jpg" /></div>
</div>
[/code]

 

[code lang="js" title="jQuery代码"]
function zvTab(){
var timeoutid;
$(".tab ul li").each(function(index){
$(this).mouseover(function(){
var t = $(this);
timeoutid = setTimeout(function(){
$(".tab ul li.current").removeClass("current");
t.addClass("current");
$(".tab div.current").removeClass("current");
$(".tab div").eq(index).addClass("current");
},300);
}).mouseout(function(){
clearTimeout(timeoutid);
});
});

}
[/code]

当然,这段JS代码要在JQ库被引入后且被执行才可用。

[code lang="css" title="CSS代码"]
.tab ul li {float:left;background:#CCC;margin-right:2px;border-bottom:2px solid #DDD;}
.tab ul li.current{background:#AAA;border-bottom:2px solid #AAA;}
.tab ul li a{color:#000;display:block;padding:5px 10px;}
.tab ul li.current a{color:#fff;display:block;padding:5px 10px;}
.tab div{display:none;}
.tab div.current{display:block;background:#AAA;color:#fff;padding:5px;margin-bottom:10px;}
[/code]

查看完整版本: jQuery Tab选项卡特效代码

From 淘宝返利网 on 2011-09-24 13:26:11

谢谢分享,学习了!

From 唯立 on 2012-10-19 09:34:51

:(2): 这个代码让我了解了延时切换的功能,之前我做的是用hover,没有用clearTimeout,鼠标放上去就切换,还是用clearTimeout稍微延时一下比较好。收藏了

From 一米 on 2013-09-20 20:38:42

把 t 后面的 ; 改成 , 或者 timeoutid 前面加个 var 好点吧。

From zenoven on 2013-09-21 16:41:51

嗯嗯,很早写的,不知道为毛没有加var,不过var也不能直接加在这里,作用域太小了,还是放到函数开始好了

From 一米 on 2013-09-22 09:20:59

我刚开始也一样啊,这个还是放到 each 函数最顶层最好了。

Tags: JQ, jquery, tab


©ZenOven