我在許多的網站上看到上面都有下拉菜單的,使得網站更栩栩如生了!象微軟的主頁,后來我想假如單用div和JAvascript是否也能實現了,通過幾次實驗也總于成功了,現在把自己想法告訴大家,希望大家網頁也加上下拉菜單使網爺更生動. 以前DOS下編寫應用程序都要面臨著界面編寫的,象菜單這些東西也要自己從頭到尾都要自己編的,到了win時代,通過事件驅動我們就很容易編寫了,何況菜單集成到系統里了,在IE下編寫菜單也是基于通過捕獲鼠標事件來響應菜單下拉和隱藏的, 我們首先要用表格來顯示菜單條, <table> <tr> <td height="9" width="100" align=center bgcolor="#33FFFF" onmouseover="showmenu(menuwenxue)">menu1</td> <td height="9" width="100" align=center bgcolor="#33FFFF" onmouseover="showmenu(menuxuexi)">menu1</td> <tr> <table> <div id="menuwenxue" style="position:absolute; width:90px; height:115px; z-index:1; left: 245px; top: 75px; visibility: hidden" onmouseout="hidemenu(menuwenxue)"> <table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0" onmouseout="hidemenu(menuwenxue)"> <tr> <td height="10" class="menufont" onmouseover="showmenu(menuwenxue)"> </td> </tr> <tr> <td height="28" align=center class="menufont" bgcolor=#ff00ff onmouseover="showmenu(menuwenxue)"><a href="javascript:alert('menu1_item1')">menu1_item1</a></td> </tr> <tr> <td height="31" align=center bgcolor=#ff00ff onmouseover="showmenu(menuwenxue)"><a href="javascript:alert('menu1_item2')">menu1_item2</a></td> </tr> <tr> <td height="30" align=center bgcolor=#ff00ff onmouseover="showmenu(menuwenxue)"><a href="javascript:alert('menu1_item3')">menu1_item3</a></td> </tr> </table> </div>
<div id="menuxuexi" style="position:absolute; width:90px; height:115px; z-index:1; left: 340px; top: 75px; visibility: hidden" onmouseout="hidemenu(menuxuexi)"> <table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0" onmouseout="hidemenu(menuxuexi)"> <tr> <td height="10" onmouseover="showmenu(menuxuexi)"> </td> </tr> <tr> <td height="27" align=center bgcolor=#ff00ff onmouseover="showmenu(menuxuexi)"><a href="javascript:alert('menu2_item2')">menu2_item1</a></td> </tr> <tr> <td height="31" align=center bgcolor=#ff00ff onmouseover="showmenu(menuxuexi)"><a href="javascript:alert('menu2_item2')">menu2_item2</a></td> </tr> <tr> <td height="30" align=center bgcolor=#ff00ff onmouseover="showmenu(menuxuexi)"><a href="javascript:alert('menu2_item3')">menu2_item3</a></td> </tr> </table> </div> <Script language="JavaScript"> <!-- function showmenu(menu){ if(menushow) menushow.style.visibility="hidden" menushow=menu menu.style.visibility="visible" } function hidemenu(menu){ menu.style.visibility="hidden" } function hideshow() { if(menushow) menushow.style.visibility="hidden" } --> </script>
--> </script> 上面是我從調試代碼上截下來的,要想得到好看的結果需要改變一下位子關系的,當然還要注意一下鼠標移動時候是否菜單會出現異,F象的,當然這些都可以通過加一些代碼來解決的,主要是鼠標移出菜單外,菜單不會消失的,可以在其它的對象截取onmouseover事件來隱藏菜單的!
【本文版權歸作者與奧索網共同擁有,如需轉載,請注明作者及出處】
|