原生js实现tab标签切换

 时间:2024-10-28 08:03:39

1、新建html文档。

原生js实现tab标签切换

2、书写hmtl代码。<div id="menu"><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实现tab标签切换

3、书写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; }#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; }.selected { background: #C5A069; color: #fff; }</style>

原生js实现tab标签切换

4、书写并添加js代码。<script>var tabs=function(){ function tag(name,elem){ return (elem||document).getElementsByTagName(name); } 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"; elem[j].firstChild.className="selected"; } else{ tabs[j].style.display="none"; elem[j].firstChild.className=""; } } } })(i) } } }}();tabs.set("nav","menu_con");</script>

原生js实现tab标签切换

5、代码整体结构。

原生js实现tab标签切换

6、查看效果。

原生js实现tab标签切换
  • Axure插入图片元件教程
  • Dreamwaver如何在使用CSS的时候添加字体
  • 墨刀如何下载内置图标
  • VF6.0一维数组操作实例解读
  • 利用Axure rp实现页面部分区域的悬浮效果
  • 热门搜索
    清明节手抄报资料 五一手抄报图片 关于重阳节的手抄报简单又漂亮 大手牵小手手抄报 六一手抄报内容简短 数学手抄报图片四年级 青少年心理健康手抄报 法律手抄报内容 珍惜生命的手抄报 科技手抄报资料