<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>JavaScript下拉式功能表</title> <style type="text/css"> * { padding:0; margin:0; } body { font-family:verdana, sans-serif; font-size:small; } #navigation, #navigation li ul { list-style-type:none; } #navigation { margin:40px; }/*可有可無屬性,是內容與邊的距離*/ #navigation li { float:left; text-align:center; position:relative;/*position:relative一定要寫,是下面的連結相對它絕對位置*/ } #navigation li a:link, #navigation li a:visited { display:block; text-decoration:none; color:#000; width:120px;/*改變所有的導覽列的長度*/ height:30px;/*改變所有導覽列的高度*/ line-height:30px; border:1px solid red;/*沒有這個屬性的所有的導覽列的顏色就連在一起了*/ background:#c5dbf2; padding-left:10px; } #navigation li ul { display:none; position:absolut; top:40px; left:0; margin-top:1px;/*可有可無,無的話主菜單和二級菜單就會沒有空隙*/ width:120px; } #h{ position:absolute; top:74px; left: 40px; } </style> <script type="text/javascript"> function displaySubMenu(li) { var subMenu = li.getElementsByTagName("ul")[0]; subMenu.style.display = "block"; } function hideSubMenu(li) { var subMenu = li.getElementsByTagName("ul")[0]; subMenu.style.display = "none"; } </script> </head> <body> <div> <div > <ul id="navigation"> <li onmouseover="displaySubMenu(li1)" onmouseout="hideSubMenu(this)" id="li1">欄目1<!--函數裡面用id和this都代表了這個節點的意思--> <ul> <li>欄目2->菜單1</li> <li>欄目1->菜單2</li> <li>欄目1->菜單3</li> </ul> </li> <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">欄目1 <ul> <li>欄目1->菜單1</li> <li>欄目1->菜單2</li> </ul> </li> <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">欄目1 <ul> <li>欄目1->菜單1</li> <li>欄目1->菜單2</li> <li>欄目1->菜單3</li> </ul> </li> </ul> </div> </div> </body> </html>
[Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]