本文實例講述了js實現簡潔的滑動門菜單。分享給大家供大家參考。具體如下:
一個簡潔實用的網頁選項卡菜單,在同一個頁面中實現兩個選項卡,第一個是滑動門,從布局上來說基本是相似的,第二個是選項卡,這裡主要使用了Js自定義函數:tabMenu,函數功能:實現tab菜單,參數說明:tabMenu(tabBox,navClass);
參數一:tabBox(tab容器id)
參數二:navClass(當前標簽樣式class)
備注:依賴指定html結構。
運行效果截圖如下:
在線演示地址如下:
http://demo.jb51.net/js/2015/js-simple-scroll-menu-tab-codes/
具體代碼如下:
<!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> <title>簡潔的選項卡菜單</title> <meta http-equiv="content-type" content="text/html;charset=gb2312"> <style type="text/css"> ul,li{margin:0;padding:0;} .tabBox{width:268px;margin:20px;} ul.tabTag{height:28px;border-bottom:1px solid #000;list-style:none} ul.tabTag li{float:left;line-height:27px;height:27px;padding:0 18px;color:#ccc;border:1px solid #ccc;border-bottom:none;margin-right:5px;background:#fff;cursor:pointer;} ul.tabTag li.active{border-color:#000;background:#eee;color:red;position:relative;top:1px;} .tabCon{border:1px solid #000;border-top:none;background:#fff;} .tCon{display:none;background:#eee;padding:25px;} </style> <script type="text/javascript"> function tabMenu(tabBox,navClass){ var tabNavLi=document.getElementById(tabBox).getElementsByTagName("ul")[0].getElementsByTagName("li"); var tabCon=document.getElementById(tabBox).getElementsByTagName("div")[0].getElementsByTagName("div"); var tabLens=tabCon.length; for(var i=0;i<tabLens;i++){ //應用js閉包傳入參數i作為當前索引值賦值給m (function(m){ tabNavLi[m].onmouseover = function(){ for(var j=0; j<tabLens; j++){ tabNavLi[j].className = (j==m)?navClass:""; tabCon[j].style.display = (j==m)?"block":""; } } })(i); } } //函數調用 window.onload=function(){ tabMenu("tabBox1","active"); tabMenu("tabBox2","active"); } </script> </head> <body> <!--demo1--> <div id="tabBox1" class="tabBox"> <ul class="tabTag"> <li class="active">新聞1</li> <li>體育1</li> <li>財經1</li> </ul> <div class="tabCon"> <div class="tCon" style="display:block">新聞1內容</div> <div class="tCon">體育1內容</div> <div class="tCon">財經1內容</div> </div> </div> <!--demo2--> <div id="tabBox2" class="tabBox"> <ul class="tabTag"> <li class="active">新聞2</li> <li>體育2</li> <li>財經2</li> </ul> <div class="tabCon"> <div class="tCon" style="display:block">新聞2內容</div> <div class="tCon">體育2內容</div> <div class="tCon">財經2內容</div> </div> </div> </body> </html>
希望本文所述對大家的javascript程序設計有所幫助。