核心代码:
$("ul > li").hover(tab);
function tab() {
$(this).addClass("ll").siblings().removeClass("ll");
var tab = $(this).attr("title");
$("#" tab).show().siblings().hide();
};
li中和title必须和div中的id一致!
完整的代码
简单的jQuery标签页Simple Tabs w(使用CSS及JQuery)
我知道有很多演示指导如何使用CSS及JQuery创建标签页,但是我还是决定自己动手创建属于我自己的标签页。当然我并不知道技术手法上是否(与别人的)相同,但我希望这个指导很容易懂,甚至对于一个初学者来说搞懂它并不费力。
原文:http://www.sohtanaka.com/web-design/simple-tabs-w-css-jquery/
对那些不是很熟悉JQuery的同学,请看他们的官方网站以获得一个大体的概述,同时你也可以进一步探究这些、这些、还有这些等许多关于JQuery的指导。
Step1. Wireframe – HTML & CSS
Wireframe: a visual representation of the structure of a web page
线框:对网页安排的一种视觉上的描绘
使用无序列表(ul)来呈现你的标签,然后进一步将一个类型(class)为”tab_container”的容器(div)放在它的下方。记住每 一个列表的项(tabs)都有一个”href”的属性值和”.tab_content”div的ID名称一致。这是十分重要的一步!因为我们用 JQuery实现(切换标签页的)动作就要靠它。请记住我为了更容易被你们理解所以使用一般的名称”tab1″。事实上,你必须使用关键字,这样更语义化 (semantic),更有益于你的SEO(搜索引擎优化)。
HTML
如果你之前曾尝试通过CSS创建过标签页,你可能已经在标签边框正确对齐的问题上受到过挫折,以下就是一些大部分朋友碰到的常见问题。
这里我想出来一个解决方案能处理这个讨厌的问题。请看看下面的图片然后看一下CSS,以及它边上的辅助注释,以便更好的理解。
Tabs CSS
ul.tabs {
margin: 0;
padding: 0;
float: left;
list-style: none;
height: 32px; /*–Set height of tabs–*/
border-bottom: 1px solid #999;
border-left: 1px solid #999;
width: 100%;
}
ul.tabs li {
float: left;
margin: 0;
padding: 0;
height: 31px; /*–Subtract 1px from the height of the unordered list–*/
line-height: 31px; /*–Vertically aligns the text within the tab–*/
border: 1px solid #999;
border-left: none;
margin-bottom: -1px; /*–Pull the list item down 1px–*/
overflow: hidden;
position: relative;
background: #e0e0e0;
}
ul.tabs li a {
text-decoration: none;
color: #000;
display: block;
font-size: 1.2em;
padding: 0 20px;
border: 1px solid #fff; /*–Gives the bevel look with a 1px white border inside the list item–*/
outline: none;
}
ul.tabs li a:hover {
background: #ccc;
}
html ul.tabs li.active, html ul.tabs li.active a:hover { /*–Makes sure that the active tab does not listen to the hover properties–*/
background: #fff;
border-bottom: 1px solid #fff; /*–Makes the active tab look like it's connected with its content—*/
}
Tab Content CSS
.tab_container {
border: 1px solid #999;
border-top: none;
overflow: hidden;
clear: both;
float: left; width: 100%;
background: #fff;
}
.tab_content {
padding: 20px;
font-size: 1.2em;
}
Step2. 让标签动起来 – JQuery
对那些不是很熟悉JQuery的同学,请看他们的官方网站以获得一个大体的概述
以下脚本包含注释,解释了哪只JQuery行为(action)正在被执行。
$(document).ready(function() {
//When page loads…
$(“.tab_content”).hide(); //Hide all content
$(“ul.tabs li:first”).addClass(“active”).show(); //Activate first tab
$(“.tab_content:first”).show(); //Show first tab content
//On Click Event
$(“ul.tabs li”).click(function() {
$(“ul.tabs li”).removeClass(“active”); //Remove any “active” class
$(this).addClass(“active”); //Add “active” class to selected tab
$(“.tab_content”).hide(); //Hide all tab content
var activeTab = $(this).find(“a”).attr(“href”); //Find the href attribute value to identify the active tab content
$(activeTab).fadeIn(); //Fade in the active ID content
return false;
});
});
View Demo
最后
最终你完成了它,一个用CSS及JQuery制作的美丽而简单的标签功能。如果你有任何问题,评论,或者建议请随便让我知晓!
完整的演示代码:
BR>"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional .dtd">
<头>
使用 CSS 和 jQuery 的简单选项卡 <样式类型=“text/css”>
主体{
背景:#f0f0f0;
保证金:0;
填充:0;
字体:10px 普通 Verdana、Arial、Helvetica、sans-serif;
颜色:#444;
}
h1 {字体大小:3em;边距:20px 0;}
.container {宽度:500px;边距:10px 自动;}
ul.tabs {
边距:0;
填充:0;
浮动:左;
列表样式:无;
高度:32px;
边框底部:1px 实心#999;
左边框:1px 实心#999;
宽度:100%;
}
ul.tabs li {
浮动:左;
保证金:0;
填充:0;
高度:31px;
行高:31px;
边框:1px实线#999;
左边框:无;
边距底部:-1px;
背景:#e0e0e0;
溢出:隐藏;
位置:相对;
}
ul.tabs li a {
文本装饰:无;
颜色:#000;
显示:块;
字体大小:1.2em;
内边距:0 20px;
边框:1px实线#fff;
大纲:无;
}
ul.tabs li a:hover {
背景:#ccc;
}
html ul.tabs li.active, html ul.tabs li.active a:hover {
背景:#fff;
边框底部:1px 实线#fff;
}
.tab_container {
边框:1pxsolid #999;
边框顶部:无;
明确:两者;
浮动:左;
宽度:100%;
背景:#fff;
-moz-border-radius-bottomright: 5px;
-khtml-border-radius-bottomright: 5px;
-webkit-border-bottom-right-radius: 5px;
-moz-border-radius-bottomleft: 5px;
-khtml-border-radius-bottomleft: 5px;
-webkit-border-bottom-left-radius: 5px;
}
.tab_content {
内边距:20px;
字体大小:1.2em;
}
.tab_content h2 {
字体粗细:正常;
底部填充:10px;
边框底部:1px虚线#ddd;
字体大小:1.8em;
}
.tab_content h3 a{
颜色:#254588;
}
.tab_content img {
浮动:左;
边距:0 20px 20px 0;
边框:1px实线#ddd;
内边距:5px;
}
风格>
$(document).ready(function() {
//默认操作
$(".tab_content").hide(); //隐藏所有内容
$("ul.tabs li:first").addClass("active").show(); //激活第一个选项卡
$(".tab_content:first").show(); //显示第一个选项卡内容
//点击事件
$("ul.tabs li").click(function() {
$("ul.tabs li").removeClass("active"); //删除任何“active”类
$(this).addClass("active"); //向选定的选项卡添加“active”类
$(".tab_content").hide(); //隐藏所有选项卡内容
var activeTab = $(this).find("a").attr("href"); //查找rel属性值来标识活动选项卡内容
$(activeTab).fadeIn(); //淡入活动内容
返回 false
}););
Simple Tabs w/ CSS & jQuery
Gallery
Saw polecat than took bankrupt good hillbilly stew, crazy, fancy and hillbilly heap rodeo, pappy. Thar range saw me him sherrif nothin' shiney dirt, pigs sheep city-slickers everlastin' shotgun driveway. Promenade catfight fart fiddle jiggly gonna tarnation, fence, what quarrel dirty, if. Pot grandma crop kinfolk jezebel diesel coonskin hoosegow wirey fixin' shack good roped in. Reckon stew tax-collectors, grandpa tobaccee hayseed good wash tired caboodle burnin' landlord.
Smokin' driveway wrestlin' go darn truck moonshine wirey cow grandpa saw, coonskin bull, java, huntin'.
Stinky yonder pigs in, rustle kinfolk gonna marshal sittin' wagon, grandpa. Ya them firewood buffalo, tobaccee cabin.
Submit
Grandma been has bankrupt said hospitality fence everlastin' wrestlin' rodeo redblooded chitlins marshal. Boobtube soap her hootch lordy cow, rattler.
Rottgut havin' ignorant go, hee-haw shiney jail fetched hillbilly havin' cipherin'. Bacon no cowpoke tobaccee horse water rightly trailer tools git hillbilly.
Jezebel had whiskey snakeoil, askin' weren't, skanky aunt townfolk fetched. Fit tractor, them broke askin', them havin' rattler fell heffer, been tax-collectors buffalo. Quarrel confounded fence wagon trailer, moonshine wuz, city-slickers fixin' cow.
Resources
Dirt tools thar, pot buffalo put jehosephat rent, ya pot promenade. Come pickled far greasy fightin', wirey, it poor yer, drive jig landlord. Rustle is been moonshine whomp hogtied. Stew, wirey stew cold uncle ails. Slap hoosegow road cooked, where gal pot, commencin' country. Weren't dogs backwoods, city-slickers me afford boxcar fat, dumb sittin' sittin' drive rustle slap, tornado. Fuss stinky knickers whomp ain't, city-slickers sherrif darn ignorant tobaccee round-up old buckshot that.
Deep-fried over shootin' a wagon cheatin' work cowpoke poor, wuz, whiskey got wirey that. Shot beer, broke kickin' havin' buckshot gritts. Drunk, em moonshine his commencin' country drunk chitlins stole. Fer tonic boxcar liar ass jug cousin simple, wuz showed yonder hee-haw drive is me. Horse country inbred wirey, skanky kinfolk. Rattler, sittin' darn skanky fence, shot huntin'.
联系方式
奶奶已经破产了,说热情好客的栅栏永远是摔跤的红血奇特林元帅。 Boobtube 给她的小母牛肥皂,响尾蛇。
罗特古特无知地走了,嘻哈闪亮的监狱被带进了密码的乡巴佬。培根无牛烟草马水正确拖车工具吉特乡巴佬。
耶洗贝尔喝了威士忌蛇油,问没有,卑鄙的阿姨镇民来了。适合拖拉机,他们打破了要求,他们有响尾蛇倒下,成为收税员的水牛。争吵弄乱了栅栏马车拖车,私酒乌兹,城里人修理牛。
身体>