JavaScript 封裝一個(gè)tab效果源碼分享
更新時(shí)間:2015年09月15日 12:12:21 投稿:mrr
本文給大家分享javascript封裝一個(gè)tab效果源碼分享,感興趣的朋友一起來看看吧
效果圖如下:
html代碼
<!DOCTYPE html> <html> <head> <title>tab測(cè)試</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-" /> <link href="css/tab.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="js/tab-min.js"></script> </head> <body> <div id="tab"> <!-- tabHead --> <ul class="tab-nav"> <li><a href="javascript:void()">交易安全</a></li> <li><a href="javascript:void()">淘寶大學(xué)</a></li> <li><a href="javascript:void()">愛心</a></li> </ul> <!-- tabPanel--> <ul class="tab-bd"> <li></li> <li></li> <li></li> </ul> </div> <script type="text/javascript"> tabPanel({"panel":"tab"});//panel為必填項(xiàng),default、defalutStyle、hoverStyle為選填項(xiàng) </script> </body> </html>
js代碼
function tabPanel(param){ var defaultIndex=param["default"]||,//設(shè)置顯示的頁面 panelobj=param["panel"],//設(shè)置tab容器 defalutClass=param["defalutStyle"]||"",//設(shè)置tab菜單項(xiàng)的普通樣式 hoverClass=param["hoverStyle"]||"hover",//設(shè)置鼠標(biāo)移到tab菜單項(xiàng)的樣式 currentIndex=defaultIndex, menus=_$(panelobj).getElementsByTagName("ul")[].getElementsByTagName("li"), contents=_$(panelobj).getElementsByTagName("ul")[].getElementsByTagName("li"), menuNumber=menus.length, hidden="hidden"; for(var i=;i<menuNumber;i++){ _setClass(contents[],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} }
css代碼
#tab{border:px solid #ccc;} #tab .tab-bd{border-top:none;margin: auto;padding:px;text-align:left;height:px;position:relative} .tab-nav{margin: auto;padding:;background:#eee;height:px;} .tab-nav li{display:inline;list-style:none outside none;width:px;height:px;float:left;line-height:px;text-align:center;} .tab-nav li a{color:#;display:inline-block} .tab-nav li a:hover,.tab-nav li.hover a{text-decoration:none;background:#fff;color:#;display:block; } .hidden{display:none}
相關(guān)文章
js文本框輸入點(diǎn)回車觸發(fā)確定兼容IE、FF等
js文本框輸入點(diǎn)回車觸發(fā)確定兼容IE、FF等,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-11-11js給onclick事件賦值,動(dòng)態(tài)傳參數(shù)實(shí)例解說
js動(dòng)態(tài)給對(duì)象onclick事件賦值,動(dòng)態(tài)傳參數(shù)舉兩個(gè)例子一對(duì)一錯(cuò),感興趣的朋友可以對(duì)比下,希望可以從中發(fā)現(xiàn)不一樣之處2013-03-03javscript 數(shù)組扁平化的實(shí)現(xiàn)
這篇文章主要介紹了javscript 數(shù)組扁平化的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02微信小程序?qū)崿F(xiàn)錨點(diǎn)跳轉(zhuǎn)
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)錨點(diǎn)跳轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11微信JS-SDK實(shí)現(xiàn)微信會(huì)員卡功能(給用戶微信卡包里發(fā)送會(huì)員卡)
這篇文章主要介紹了微信JS-SDK實(shí)現(xiàn)微信會(huì)員卡功能(給用戶微信卡包里發(fā)送會(huì)員卡),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07采用自執(zhí)行的匿名函數(shù)解決for循環(huán)使用閉包的問題
這篇文章主要介紹了采用自執(zhí)行的匿名函數(shù)解決for循環(huán)使用閉包的問題,很簡單,但比較實(shí)用,需要的朋友可以參考下2014-09-09微信企業(yè)號(hào)開發(fā)之微信考勤Cookies的使用
使用微信考勤,每次使用微信企業(yè)號(hào)開發(fā):微信用戶信息和web網(wǎng)頁的session的關(guān)系這個(gè)里邊的方法,調(diào)用微信的接口,有點(diǎn)慢,微信官方也推薦使用Cookies,但如何使用Cookies,自己卻一直沒有搞清楚。下面小編幫大家解決難題,需要的朋友可以參考下2015-09-09