js实现tab切换效果实例
作者:bea
直接先来个真相吧: 【HTML代码】 <div id="menu"><!--tag标题--> <ul id="nav"> <li><a href="#" class="selected">tab1</a></li> <li><a href="#" class="">tab2</a></li> <li><
直接先来个真相吧:
【HTML代码】
<div id="menu">
<!--tag标题-->
<ul id="nav">
<li><a href="#" class="selected">tab1</a></li>
<li><a href="#" class="">tab2</a></li>
<li><a href="#" class="">tab3</a></li>
<div style="clear:both"></div>
</ul>
<!--二级菜单-->
<div id="menu_con">
<div class="tag" style="display:block">
这是TAB切换效果区域1
</div>
<div class="tag" style="display:none">
这是TAB切换效果区域2
</div>
<div class="tag" style="display:none">
这是TAB切换效果区域3
</div>
</div>
</div>
【js】
/**
* tabs
* @author 橡树小屋
*/
var tabs=function(){
function tag(name,elem){
return (elem||document).getElementsByTagName(name);
}
//获得相应ID的元素
function id(name){
return document.getElementById(name);
}
function first(elem){
elem=elem.firstChild;
return elem&&elem.nodeType==1? elem:next(elem);
}
function next(elem){
do{
elem=elem.nextSibling;
}while(
elem&&elem.nodeType!=1
)
return elem;
}
return {
set:function(elemId,tabId){
var elem=tag("li",id(elemId));
var tabs=tag("div",id(tabId));
var listNum=elem.length;
var tabNum=tabs.length;
for(var i=0;i<listNum;i++){
elem[i].onclick=(function(i){
return function(){
for(var j=0;j<tabNum;j++){
if(i==j){
tabs[j].style.display="block";
//alert(elem[j].firstChild);
elem[j].firstChild.className="selected";
}
else{
tabs[j].style.display="none";
elem[j].firstChild.className="";
}
}
}
})(i)
}
}
}
}();
window.onload=function(){
tabs.set("nav","menu_con");
}
【CSS】
body{ background:#FFF;}
a{color:#585858}
#menu{width:360px;}
/*-------------------nav样式----------------------*/
#menu #nav {display:block;width:100%;padding:0;margin:0;list-style:none;
background:url(../images/bg.gif)}
#menu #nav li {float:left;width:120px;}
#menu #nav li a {display:block;line-height:27px;text-decoration:none;padding:0 0 0 5px; text-align:center}
/*-------------------列表标题样式----------------------*/
#menu_con{ width:358px; height:135px;border:1px solid #BF9660; border-top:none}
.selected{background:url(../images/tag_bg.gif);}
.clear{ clear:both}
调用方法:
tabs.set("nav","menu_con");
代码下载 点击这里
这个实例只是简单实现了点击切换的效果,还有许多功能可以添加,大家一起动手实践一下吧。
猜你喜欢
您可能感兴趣的文章:
- 11种ASP连接数据库的方法
- jquery实现隐藏在左侧的弹性弹出菜单效果
- JS+CSS实现简易实用的滑动门菜单效果
- JS实现很实用的对联广告代码(可自适应高度)
- jQuery实现可用于博客的动态滑动菜单完整实例
- jquery实现仿Flash的横向滑动菜单效果代码
- JS实现带关闭功能的阿里妈妈网站顶部滑出banner工具条代码
- JQuery标签页效果的两个实例讲解(4)
- JS实现具备延时功能的滑动门菜单效果
- JQuery菜单效果的两个实例讲解(3)
- JQuery实现可编辑的表格实例讲解(2)
- JQuery入门基础小实例(1)
- JQuery实现级联下拉框效果实例讲解
- JS+CSS实现精美的二级导航效果代码
- jQuery实现仿腾讯迷你首页选项卡效果代码
- jQuery实现仿美橙互联两级导航菜单效果完整实例
- JS实现无限级网页折叠菜单(类似树形菜单)效果代码
- jQuery实现折叠、展开的菜单组效果代码
- ANGULARJS中使用JQUERY分页控件