动感效果的TAB选项卡jquery 插件


Posted in Javascript onJuly 09, 2011

效果图:
动感效果的TAB选项卡jquery 插件
动感效果的TAB选项卡 jquery 插件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
<link href="tab.css" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="jquery-1.6.2.min.js"></script> 
<script type="text/javascript" src="tab.js"></script> 
<script type="text/javascript"> 
$(function() { 
zeng.tab.init(); 
}); 
</script> 
</head> 
<body> 
<div class="clearfix" id="hot"> 
<div class="main_l tab"> 
<div class="main_title clearfix"> 
<ul class="fx"> 
<li class="on"><a href="#">你是gril</a></li> 
<li class="">我是boy</li> 
</ul> 
</div> 
<div class="t"> 
<div class="main_content clearfix"> 
我在香格里拉 
</div> 
</div> 
<div class="t none"> 
<div class="main_content clearfix"> 
呵呵 
</div> 
</div> 
</div> 
</div> 
</body> 
</html>

样式:
@charset "utf-8"; 
/* CSS Document */ 
#hot { 
height: 565px; 
overflow: hidden; 
} 
.clearfix { 
display: block; 
} 
.clearfix::after { 
content: "."; 
display: block; 
height: 0; 
clear: both; 
visibility: hidden; 
} 
ul { 
list-style: none outside none; 
} 
body { 
line-height: 1.5; 
} 
a, a:link, a:visited { 
color: #333333; 
text-decoration: none; 
} 
a:hover { 
color: #FF6600; 
text-decoration: none; 
} 
.main { 
padding: 0 10px 0 167px; 
position: relative; 
width: 823px; 
} 
.main_l { 
float: left; 
position: relative; 
width: 513px; 
} 
.main_r { 
float: right; 
position: relative; 
width: 300px; 
} 
.main_title { 
background: url("images/s.png") no-repeat scroll 0 0 transparent; 
float: left; 
height: 28px; 
overflow: hidden; 
} 
.main_title ul { 
font-size: 14px; 
} 
.main_title ul li { 
background: none repeat scroll 0 0 #F1F1F1; 
border-left: 1px solid #FFFFFF; 
border-right: 1px solid #FFFFFF; 
border-top: 3px solid #FFFFFF; 
float: left; 
height: 23px; 
line-height: 23px; 
padding-left: 16px; 
padding-right: 16px; 
padding-top: 1px; 
} 
.main_title ul .on { 
background: none repeat scroll 0 0 #FFFFFF; 
border-color: #009AD9 #009AD9 #FFFFFF; 
border-style: solid; 
border-width: 4px 1px 1px; 
height: 22px; 
line-height: 22px; 
padding-left: 16px; 
padding-right: 16px; 
} 
.main_title ul .on a { 
font-weight: 700; 
} 
.main_title span { 
float: right; 
line-height: 24px; 
padding-right: 10px; 
padding-top: 4px; 
} 
.main_l .main_title { 
overflow: hidden; 
width: 513px; 
} 
.main_l .main_content { 
width: 513px; 
} 
.tab div.t.none { 
display: none; 
} 
.tab .main_title ul.fx li, #link .main_l .main_title ul.fx li { 
background-color: transparent; 
} 
.tab .main_title ul.fx li, .tab .main_title ul.fx li.on { 
border-top: 0 none; 
margin-top: -8px; 
padding-top: 0; 
} 
.tab .main_title ul.fx li.on { 
border-bottom-width: 0; 
border-left-color: transparent; 
border-right-color: transparent; 
} 
.tab .main_title ul.fx { 
position: relative; 
z-index: 20; 
} 
.tab .main_title div.animate { 
background-color: #FFFFFF; 
border-color: #009AD9 #009AD9 #FFFFFF; 
border-style: solid; 
border-width: 4px 1px 1px; 
height: 23px; 
position: absolute; 
top: 0; 
}

tab选项卡 源代码:
/* 
* tab 1.0 
* Date: 2011-07-09 15:29 
* http://zengxiangzhan.cnblogs.com/ 
*/ 
var zeng = zeng || {}; 
zeng.tab = { 
t: null, 
delayTime: 150, 
fx: true, 
tab: function(b) { 
$(b).siblings().removeClass("on"); 
$(b).addClass("on"); 
var c = $(b).parents(".tab").find("div.t"); 
var a = c.eq($(b).index()); 
c.addClass("none"); 
a.removeClass("none"); 
if (this.fx) { 
if ($(b).parent().hasClass("nofx")) { 
return 
} 
$(b).parent().siblings(".animate").width($(b).outerWidth() - 2).animate({ 
left: $(b).position().left 
}, "slow") 
} 
}, 
delayTab: function(b, a) { 
clearTimeout(b.t); 
this.t = setTimeout(function() { 
b.tab(a) 
}, this.delayTime) 
}, 
init: function() { 
var a = this; 
a.animate(); 
if (window.Touch) { 
$(".tab .main_title>ul>li[class!='on']>a").click(function() { 
return false 
}) 
} 
$(".tab .main_title>ul>li,.tab>ul.hotread_menu>li").hover(function() { 
a.delayTab(a, this) 
}, function() { 
clearTimeout(a.t) 
}) 
}, 
animate: function() { 
if (!this.fx) { 
return 
} 
$(".tab .main_title>ul").each(function() { 
if (!$(this).hasClass("nofx")) { 
$(this).addClass("fx") 
} 
}); 
$(".tab .main_title").each(function(a, b) { 
if ($(this).find("ul").hasClass("nofx")) { 
return 
} 
$(b).append("<div class='animate' ></div>"); 
$(b).find(".animate").width($(b).find("ul>li.on").outerWidth() - 2).css("left", $(b).find("ul>li.on").position().left) 
}) 
} 
};

作者:曾祥展
Javascript 相关文章推荐
JS类中定义原型方法的两种实现的区别
Mar 08 Javascript
6个DIV 135或246间隔一秒轮番显示效果
Jul 24 Javascript
求数组最大最小值方法适用于任何数组
Aug 16 Javascript
JavaScript避免代码的重复执行经验技巧分享
Apr 17 Javascript
jQuery简单实现两级下拉菜单效果代码
Sep 15 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
Dec 08 Javascript
利用JavaScript在网页实现八数码启发式A*算法动画效果
Apr 16 Javascript
react-router实现跳转传值的方法示例
May 27 Javascript
Javascript es7中比较实用的两个方法示例
Jul 21 Javascript
javascript 中模板方法单例的实现方法
Oct 17 Javascript
如何在 JavaScript 中更好地利用数组
Sep 27 Javascript
微信小程序学习总结(三)条件、模板、文件引用实例分析
Jun 04 Javascript
使用Jquery打造最佳用户体验的登录页面的实现代码
Jul 08 #Javascript
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
Jul 08 #Javascript
jquery 选项卡效果 新手代码
Jul 08 #Javascript
基于jquery实现图片广告轮换效果代码
Jul 07 #Javascript
jquery调用wcf并展示出数据的方法
Jul 07 #Javascript
基于json的jquery地区联动效果代码
Jul 06 #Javascript
JQury slideToggle闪烁问题及解决办法
Jul 05 #Javascript
You might like
PHP去除数组中重复的元素并按键名排序函数
2008/08/18 PHP
PHP 批量更新网页内容实现代码
2010/01/05 PHP
分享一个php 的异常处理程序
2014/06/22 PHP
PHP中IP地址与整型数字互相转换详解
2014/08/20 PHP
PHP实现根据银行卡号判断银行
2015/04/29 PHP
Linux平台php命令行程序处理管道数据的方法
2016/11/10 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
$.getJSON在IE下失效的原因分析及解决方法
2013/06/16 Javascript
javaScript中两个等于号和三个等于号之间的区别介绍
2014/06/27 Javascript
NodeJs中的VM模块详解
2015/05/06 NodeJs
干货分享:让你分分钟学会javascript闭包
2015/12/25 Javascript
Nodejs中Express 常用中间件 body-parser 实现解析
2017/05/22 NodeJs
Vue动态实现评分效果
2017/05/24 Javascript
jQuery实现简单的下拉菜单导航功能示例
2017/12/07 jQuery
js中split()方法得到的数组长度问题
2018/07/19 Javascript
nodejs 生成和导出 word的实例代码
2018/07/31 NodeJs
Vue循环组件加validate多表单验证的实例
2018/09/18 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
2018/11/14 Javascript
Jquery的autocomplete插件用法及参数讲解
2019/03/12 jQuery
JavaScript之scrollTop、scrollHeight、offsetTop、offsetHeight等属性学习笔记
2020/07/15 Javascript
让python同时兼容python2和python3的8个技巧分享
2014/07/11 Python
python利用Guetzli批量压缩图片
2017/03/23 Python
Python操作Sql Server 2008数据库的方法详解
2018/05/17 Python
通过实例简单了解Python中yield的作用
2019/12/11 Python
pycharm快捷键汇总
2020/02/14 Python
Django model class Meta原理解析
2020/11/14 Python
使用Python+Appuim 清理微信的方法
2021/01/26 Python
css3教程之倾斜页面
2014/01/27 HTML / CSS
HTML5中的拖放实现详解
2017/08/23 HTML / CSS
英国绿色商店:Natural Collection
2019/05/03 全球购物
医科大学生的自我评价
2013/12/04 职场文书
公务员平时考核实施方案
2014/03/11 职场文书
会计电算化专业自荐信
2014/03/15 职场文书
劳资员岗位职责
2015/02/13 职场文书
HTML+CSS实现导航条下拉菜单的示例代码
2021/08/02 HTML / CSS
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript