
详情
模板社整理制作的一款原生js tab标签切换效果
css样式:
<style>
*{ margin:0; padding:0; list-style:none;}
body{ font-size:12px;}
#menu{width:360px; overflow:hidden; margin:100px auto;border:1px solid #BF9660;}
#menu #nav {display:block;width:100%;padding:0;margin:0;list-style:none;border-bottom: 1px solid #BF9660;overflow:hidden;}
#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; color:#333;}
#menu_con{ width:358px; height:135px; border-top:none}
.tag{ padding:10px; overflow:hidden;}
#menu #nav li a.selected{background:#C5A069; color:#fff;}
</style>
html代码:
<div id="menu">
<!--tag标题-->
<ul id="nav">
<li><a href="#" class="selected">jQuery特效</a></li>
<li><a href="#" class="">tab切换</a></li>
<li><a href="#" class="">菜单导航</a></li>
</ul>
<!--二级菜单-->
<div id="menu_con">
<div class="tag" style="display:block">
这里是jQuery特效内容列表
</div>
<div class="tag" style="display:none">
这里是tab切换效果
</div>
<div class="tag" style="display:none">
这里是菜单导航效果
</div>
</div>
</div>
js控制代码:
<script>
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)
}
}
}
}();
tabs.set("nav","menu_con");//执行
</script>
模板社为广大DeDeCMS爱好者和使用者提供DeDeCMS织梦模板、织梦模板下载、DeDeCMS技巧教程、DeDeCMS插件、banner焦点图特效、图片特效、客服侧边栏代码、导航特效、常用软件下载、TAB选项卡特效等素材资源分享下载。

