js實現(xiàn)tab切換效果
更新時間:2017年02月16日 16:00:46 作者:jenn89
本文主要分享了js封裝一個tab切換效果的示例代碼,具有很好的參考價值,下面跟著小編一起來看下吧
效果如下:
代碼如下:
<!DOCTYPE html > <html> <head> <meta charset="utf-8" /> <title>js封裝一個tab效果</title> <style type="text/css"> *{margin:0; padding:0;} body { font:12px/1.8 Arial; color:#666;} .wrapper { width:500px; border:1px solid #e6e6e6; margin:0 auto; padding:50px;} /*--=tabPanel--*/ #tab{border:1px solid #ccc;} #tab .tab-bd{border-top:none;margin:0 auto;padding:10px;text-align:left;height:120px;position:relative} .tab-nav{margin:0 auto;padding:0;background:#eee;height:26px;} .tab-nav li{display:inline;list-style:none outside none;width:90px;height:26px;float:left;line-height:26px;text-align:center;} .tab-nav li a{color:#555;display:inline-block} .tab-nav li a:hover,.tab-nav li.hover a{text-decoration:none;background:#fff;color:#000;display:block; } .hidden{display:none} </style> <script type="text/javascript"> function tabPanel(param){ var defaultIndex=param["default"]||0,//設(shè)置顯示的頁面 panelobj=param["panel"],//設(shè)置tab容器 defalutClass=param["defalutStyle"]||"",//設(shè)置tab菜單項的普通樣式 hoverClass=param["hoverStyle"]||"hover",//設(shè)置鼠標(biāo)移到tab菜單項的樣式 currentIndex=defaultIndex, menus=_$(panelobj).getElementsByTagName("ul")[0].getElementsByTagName("li"), contents=_$(panelobj).getElementsByTagName("ul")[1].getElementsByTagName("li"), menuNumber=menus.length, hidden="hidden"; for(var i=0;i<menuNumber;i++){ _setClass(contents[0],hoverClass); _setClass(contents[i],hidden); _setClass(menus[i],defalutClass); (function(i){ menus[i].onmouseover=function(){ var old=menus[currentIndex]; _setClass(old,defalutClass); _setClass(contents[currentIndex],hidden); var cur=menus[i]; _setClass(cur,hoverClass); currentIndex=i; _setClass(contents[i],""); }; })(i); } _setClass(menus[currentIndex],hoverClass); _setClass(contents[currentIndex],""); //便利函數(shù) function _setClass(obj,className){obj.className=className} function _$(oid){return typeof(oid) == "string"?document.getElementById(oid):oid} } </script> <body> <div class="wrapper"> <div id="tab"> <!-- tabHead --> <ul class="tab-nav"> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >交易安全</a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >淘寶大學(xué)</a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >愛心</a></li> </ul> <!-- tabPanel--> <ul class="tab-bd"> <li> 1111 </li> <li> 222 </li> <li> 333 </li> </ul> </div> <script type="text/javascript"> tabPanel({"panel":"tab"});//panel為必填項,default、defalutStyle、hoverStyle為選填項 </script> </div> </body> </html>
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
JavaScript中clientWidth,offsetWidth,scrollWidth的區(qū)別
這篇文章主要介紹了Element中clientWidth,offsetWidth,scrollWidth的區(qū)別,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下2021-01-01JS箭頭函數(shù)和常規(guī)函數(shù)之間的區(qū)別實例分析【 5 個區(qū)別】
這篇文章主要介紹了JS箭頭函數(shù)和常規(guī)函數(shù)之間的區(qū)別,結(jié)合實例形式分析了JS箭頭函數(shù)和常規(guī)函數(shù)之間的 5 個區(qū)別與相關(guān)使用注意事項,需要的朋友可以參考下2020-05-05原生javascript自定義input[type=radio]效果示例
這篇文章主要介紹了原生javascript自定義input[type=radio]效果,結(jié)合實例形式分析了javascript模擬form表單中radio效果的相關(guān)操作技巧,需要的朋友可以參考下2019-08-08bootstrap——bootstrapTable實現(xiàn)隱藏列的示例
本篇文章主要介紹了bootstrapTable實現(xiàn)隱藏列的示例,具有一定的參考價值,有興趣的可以了解一下。2017-01-01基于JavaScript實現(xiàn)圖片點擊彈出窗口而不是保存
這篇文章主要介紹了基于JavaScript實現(xiàn)圖片點擊彈出窗口而不是保存的相關(guān)資料,需要的朋友可以參考下2016-02-02微信小程序全局變量改變監(jiān)聽的實現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于微信小程序全局變量改變監(jiān)聽的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用微信小程序具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07