JavaScript二級下拉選單詳解
下面通過程式碼例項介紹一下,如何利用原生JavaScript實現二級下拉選單效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #nav{ list-style:none; text-align:center; } #nav li{ float:left; width:100px; color:white; background-color:#3E3E3E; } #menu{ list-style:none; padding:5px; display:none; margin-left:-5px; margin-top:-5px; } #menu li{ background-color:#ccc; width:100px; text-align:left; padding-left:10px; } #menu li a:link{ text-decoration:none; display:block; } #menu li a:hover{ background-color:#3E3E3E; color:white } </style> <script type="text/javascript"> window.onload=function(){ var lis=document.getElementById("nav").getElementsByTagName('li'); var i=0; for( i=0;i<lis.length;i++){ if (lis[i].className == "child") { lis[i].onmouseover=function(){ var ulObj=this.getElementsByTagName('ul')[0]; ulObj.style.display="block"; this.style.backgroundColor="#ccc"; this.style.color="black"; } } lis[i].onmouseout=function(){ var ulObj=this.getElementsByTagName('ul')[0]; ulObj.style.display="none"; this.style.backgroundColor="#3E3E3E"; this.style.color="white"; } } } </script> </head> <body> <ul id="nav"> <li class="child"> 螞蟻部落一 <ul id="menu"> <li><a href="#">div css教程</a></li> <li><a href="#">js教程</a></li> <li><a href="#">運營交流</a></li> <li><a href="#">站長工具</a></li> </ul> </li> <li class="child"> 螞蟻部落二 <ul id="menu"> <li><a href="#">jquery教程</a></li> <li><a href="#">c#教程</a></li> <li><a href="#">html教程</a></li> <li><a href="#">java教程</a></li> </ul> </li> <li class="child"> 螞蟻部落三 <ul id="menu"> <li><a href="#">搜尋優化</a></li> <li><a href="#">站長之家</a></li> <li><a href="#">dw教程</a></li> <li><a href="#">seaj教程</a></li> </ul> </li> </ul> </body> </html>
上面的程式碼實現了簡單的二級下拉選單效果,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).window.onload=function(){},當文件內容完全載入完畢再去執行函式中的程式碼。
(2).var lis=document.getElementById("nav").getElementsByTagName('li'),獲取li元素集合。
(3).for(var i=0;i<lis.length;i++){},為每個class屬性值為child的元素註冊mouseover事件處理函式。
(4).if(lis.className=="child"),判斷當前元素的class屬性值是否為child。
(5).lis.onmouseover=function(){},為當前元素註冊mouseover事件處理函式。
(6).var ulObj=this.getElementsByTagName('ul')[0],獲取li元素的第一個ul元素。
(7).ulObj.style.display="block",ul元素預設是隱藏的,滑鼠懸浮可以將其顯示。
(8).this.style.backgroundColor="#ccc",設定它的背景顏色。
(9).this.style.color="black",設定字型顏色。
二.相關閱讀:
(1).className參閱js className一章節。
(2).mouseover事件參閱javascript mouseover 事件一章節。
(3).getElementsByTagName()參閱document.getElementsByTagName()一張章節。
(4).mouseout事件參閱javascript mouseout一章節。
相關文章
- 二級下拉導航選單製作詳解
- JavaScript 動畫效果緩慢二級下拉選單JavaScript動畫
- CSS 二級下拉選單CSS
- CSS二級下拉選單CSS
- CSS三級下拉導航選單詳解CSS
- jQuery與CSS二級下拉選單jQueryCSS
- 模擬select下拉選單詳解
- JavaScript二級導航選單JavaScript
- JavaScript下拉摺疊導航選單講解JavaScript
- jQuery 緩衝效果二級導航下拉選單jQuery
- JavaScript帶下拉選單的文字框JavaScript
- JavaScript動態操作select下拉選單JavaScript
- JavaScript slide下拉導航選單效果JavaScriptIDE
- jquery實現四級級聯下拉選單jQuery
- JavaScript橫向二級導航選單效果JavaScript
- JavaScript滑鼠懸浮出現下拉選單效果JavaScript
- jquery-滑鼠經過導航條,顯示二級下拉選單jQuery
- jQuery三級導航選單詳解jQuery
- JavaScript側欄緩動分享選單詳解JavaScript
- Vue 資料雙向繫結實現二級下拉懸浮選單Vue
- vue下拉選單Vue
- JavaScript 省市級聯選單原理JavaScript
- JavaScript 三級導航選單JavaScript
- HTML/CSS 二級選單HTMLCSS
- HTML select 下拉選單HTML
- HTML select下拉選單HTML
- kendoUI 多選下拉選單 kendoMultiSelectUI
- JavaScript繼承詳解(二)JavaScript繼承
- js物件導向封裝級聯下拉選單列表JS物件封裝
- JavaScript省市級聯效果詳解JavaScript
- 實現單擊一級選單顯示或隱藏二級選單
- jQuery 美化select下拉選單jQuery
- 圓角select下拉選單
- JavaScript實現HTML導航欄下拉選單[懸浮顯示]JavaScriptHTML
- 下拉選單「點選外面關閉」的終極解決方案
- 選擇select下拉選單網頁跳轉網頁
- checkbox及css實現點選下拉選單CSS
- django許可權之二級選單Django