如题:现在想把下边的程序改成当鼠标离开时下拉菜单不关闭,求教各位高手 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>简洁的横向二级下拉导航菜单 </title> 
<meta http-equiv="content-type" content="text/html;charset=gb2312"> 
<!--把下面代码加到 <head>与 </head>之间--> 
<style type="text/css"> 
<!-- 
* {margin:0;padding:0;border:0;} 
body { font-family: arial, 宋体, serif;font-size:12px;} 
#nav { height: 24px;  list-style-type: none;  padding-left:200px;line-height:24px;overflow:hidden;background:#999;} 
#nav a {display: block; width: 80px; text-align:center;} 
#nav a:link  { color:#EEE; text-decoration:none;} 
#nav a:visited  {color:#EEE;text-decoration:none;} 
#nav a:hover  {color:#FFF;text-decoration:none;font-weight:bold;background:#CCC;} 
#nav li { float: left; width: 80px;} 
#nav li ul {line-height: 24px; list-style-type: none;text-align:left;left: -999px; width: 510px; position: absolute;background:#CCC;} 
#nav li ul li{float: left;width: 80px;} 
#nav li ul a{display: block; width: 65px;text-align:left;padding-left:15px;} 
#nav li ul a:link  { color:#F1F1F1; text-decoration:none;} 
#nav li ul a:visited  {color:#F1F1F1;text-decoration:none;} 
#nav li ul a:hover  {color:#FFF;text-decoration:none;font-weight:normal;background:#C00;} 
#nav li:hover ul {left:25%;} 
#nav li.sfhover ul { left:25%;} 
#content {clear: left;} 
--> 
</style> 
<script type=text/javascript> 
<!--//--> <![CDATA[//> <!-- 
function showMenu(_obj){ 
var x=_obj.offsetLeft; 
W=_obj.offsetWidth 
w=_obj.getElementsByTagName("ul")[0].offsetWidth 
_obj.getElementsByTagName("ul")[0].style.left=x+W/2-w/2+20 

function menuFix() { 
var sfEls = document.getElementById("nav").getElementsByTagName("li"); 
for (var i=0; i <sfEls.length; i++) { 
if (sfEls[i].parentNode.id=="nav"){ 
  sfEls[i].onmouseover=function() {showMenu(this)} 
  sfEls[i].onMouseDown=function() {showMenu(this)} 
  sfEls[i].onMouseUp=function() {showMenu(this)} 
  sfEls[i].onmouseout=function() {this.className=this.getElementsByTagName("ul")[0].style.left="-999px";} 



window.onload=menuFix; 
//--> <!]]> 
</script> 
</head> 
<body> 
<!--把下面代码加到 <body>与 </body>之间--> 
<ul id="nav"> 
  <li> <a href="#">菜单1 </a> 
    <ul> 
      <li> <a href="#">菜单1_1 </a> </li> 
      <li> <a href="#">菜单1_2 </a> </li> 
      <li> <a href="#">菜单1_3 </a> </li> 
      <li> <a href="#">菜单1_4 </a> </li> 
      <li> <a href="#">菜单1_5 </a> </li> 
      <li> <a href="#">菜单1_6 </a> </li> 
    </ul> 
  </li> 
  <li> <a href="#">菜单2 </a> 
    <ul> 
      <li> <a href="#">菜单2_1 </a> </li> 
      <li> <a href="#">菜单2_2 </a> </li> 
      <li> <a href="#">菜单2_3 </a> </li> 
      <li> <a href="#">菜单2_4 </a> </li> 
      <li> <a href="#">菜单2_5 </a> </li> 
    </ul> 
  </li> 
  <li> <a href="#">菜单3 </a> 
    <ul> 
      <li> <a href="#">菜单3_1 </a> </li> 
      <li> <a href="#">菜单3_2 </a> </li> 
      <li> <a href="#">菜单3_3 </a> </li> 
      <li> <a href="#">菜单3_4 </a> </li> 
    </ul> 
  </li> 
  <li> <a href="#">菜单4 </a> 
    <ul> 
      <li> <a href="#">菜单4_1 </a> </li> 
      <li> <a href="#">菜单4_2 </a> </li> 
      <li> <a href="#">菜单4_3 </a> </li> 
    </ul> 
  </li> 
  <li> <a href="#">菜单5 </a> 
    <ul> 
      <li> <a href="#">菜单5_1 </a> </li> 
      <li> <a href="#">菜单5_2 </a> </li> 
    </ul> 
  </li> 
  <li> <a href="#">菜单6 </a> 
    <ul> 
      <li> <a href="#">菜单6_1 </a> </li> 
    </ul> 
  </li> 
</ul> 
</body> 
</html> 
 
 

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <title>简洁的横向二级下拉导航菜单 </title> 
    <meta http-equiv="content-type" content="text/html;charset=gb2312"> 
    <!--把下面代码加到 <head>与 </head>之间--> 
    <style type="text/css"> 
    <!-- 
    * {margin:0;padding:0;border:0;} 
    body { font-family: arial, 宋体, serif;font-size:12px;} 
    #nav { height: 24px;  list-style-type: none;  padding-left:200px;line-height:24px;overflow:hidden;background:#999;} 
    #nav a {display: block; width: 80px; text-align:center;} 
    #nav a:link  { color:#EEE; text-decoration:none;} 
    #nav a:visited  {color:#EEE;text-decoration:none;} 
    #nav a:hover  {color:#FFF;text-decoration:none;font-weight:bold;background:#CCC;} 
    #nav li { float: left; width: 80px;} 
    #nav li ul {line-height: 24px; list-style-type: none;text-align:left;left: -999px; width: 510px; position: absolute;background:#CCC;} 
    #nav li ul li{float: left;width: 80px;} 
    #nav li ul a{display: block; width: 65px;text-align:left;padding-left:15px;} 
    #nav li ul a:link  { color:#F1F1F1; text-decoration:none;} 
    #nav li ul a:visited  {color:#F1F1F1;text-decoration:none;} 
    #nav li ul a:hover  {color:#FFF;text-decoration:none;font-weight:normal;background:#C00;} 
    #nav li:hover ul {left:25%;} 
    #nav li.sfhover ul { left:25%;} 
    #content {clear: left;} 
    --> 
    </style> 
    <script type=text/javascript> 
    <!--//--> <![CDATA[//> <!-- 
    var old=null;
    function showMenu(_obj){
    if(old)
    old.className=old.getElementsByTagName("ul")[0].style.left="-999px"; 
    var x=_obj.offsetLeft; 
    W=_obj.offsetWidth 
    w=_obj.getElementsByTagName("ul")[0].offsetWidth 
    _obj.getElementsByTagName("ul")[0].style.left=x+W/2-w/2+20 

    function menuFix() { 
    var sfEls = document.getElementById("nav").getElementsByTagName("li"); 
    for (var i=0; i <sfEls.length; i++) { 
    if (sfEls[i].parentNode.id=="nav"){ 
      sfEls[i].onmouseover=function() {showMenu(this)} 
      sfEls[i].onMouseDown=function() {showMenu(this)} 
      sfEls[i].onMouseUp=function() {showMenu(this)} 
      sfEls[i].onmouseout=function() {old=this;} 



    window.onload=menuFix; 
    //--> <!]]> 
    </script> 
    </head> 
    <body> 
    <!--把下面代码加到 <body>与 </body>之间--> 
    <ul id="nav"> 
      <li> <a href="#">菜单1 </a> 
        <ul> 
          <li> <a href="#">菜单1_1 </a> </li> 
          <li> <a href="#">菜单1_2 </a> </li> 
          <li> <a href="#">菜单1_3 </a> </li> 
          <li> <a href="#">菜单1_4 </a> </li> 
          <li> <a href="#">菜单1_5 </a> </li> 
          <li> <a href="#">菜单1_6 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单2 </a> 
        <ul> 
          <li> <a href="#">菜单2_1 </a> </li> 
          <li> <a href="#">菜单2_2 </a> </li> 
          <li> <a href="#">菜单2_3 </a> </li> 
          <li> <a href="#">菜单2_4 </a> </li> 
          <li> <a href="#">菜单2_5 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单3 </a> 
        <ul> 
          <li> <a href="#">菜单3_1 </a> </li> 
          <li> <a href="#">菜单3_2 </a> </li> 
          <li> <a href="#">菜单3_3 </a> </li> 
          <li> <a href="#">菜单3_4 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单4 </a> 
        <ul> 
          <li> <a href="#">菜单4_1 </a> </li> 
          <li> <a href="#">菜单4_2 </a> </li> 
          <li> <a href="#">菜单4_3 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单5 </a> 
        <ul> 
          <li> <a href="#">菜单5_1 </a> </li> 
          <li> <a href="#">菜单5_2 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单6 </a> 
        <ul> 
          <li> <a href="#">菜单6_1 </a> </li> 
        </ul> 
      </li> 
    </ul> 
    </body> 
    </html> 
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <title>简洁的横向二级下拉导航菜单 </title> 
    <meta http-equiv="content-type" content="text/html;charset=gb2312"> 
    <!--把下面代码加到 <head>与 </head>之间--> 
    <style type="text/css"> 
    <!-- 
    * {margin:0;padding:0;border:0;} 
    body { font-family: arial, 宋体, serif;font-size:12px;} 
    #nav { height: 24px;  list-style-type: none;  padding-left:200px;line-height:24px;overflow:hidden;background:#999;} 
    #nav a {display: block; width: 80px; text-align:center;} 
    #nav a:link  { color:#EEE; text-decoration:none;} 
    #nav a:visited  {color:#EEE;text-decoration:none;} 
    #nav a:hover  {color:#FFF;text-decoration:none;font-weight:bold;background:#CCC;} 
    #nav li { float: left; width: 80px;} 
    #nav li ul {line-height: 24px; list-style-type: none;text-align:left;left: -999px; width: 510px; position: absolute;background:#CCC;} 
    #nav li ul li{float: left;width: 80px;} 
    #nav li ul a{display: block; width: 65px;text-align:left;padding-left:15px;} 
    #nav li ul a:link  { color:#F1F1F1; text-decoration:none;} 
    #nav li ul a:visited  {color:#F1F1F1;text-decoration:none;} 
    #nav li ul a:hover  {color:#FFF;text-decoration:none;font-weight:normal;background:#C00;} 
    #nav li:hover ul {left:25%;} 
    #nav li.sfhover ul { left:25%;} 
    #content {clear: left;} 
    --> 
    </style> 
    <script type=text/javascript> 
    <!--//--> <![CDATA[//> <!-- 
    function showMenu(_obj){ 
    var x=_obj.offsetLeft; 
    W=_obj.offsetWidth 
    w=_obj.getElementsByTagName("ul")[0].offsetWidth 
    _obj.getElementsByTagName("ul")[0].style.left=x+W/2-w/2+20 

    function menuFix() { 
    var sfEls = document.getElementById("nav").getElementsByTagName("li"); 
    for (var i=0; i <sfEls.length; i++) { 
    if (sfEls[i].parentNode.id=="nav"){ 
      sfEls[i].onmouseover=function() {showMenu(this)} 
      sfEls[i].onMouseDown=function() {showMenu(this)} 
      sfEls[i].onMouseUp=function() {showMenu(this)} 



    window.onload=menuFix; 
    //--> <!]]> 
    </script> 
    </head> 
    <body> 
    <!--把下面代码加到 <body>与 </body>之间--> 
    <ul id="nav"> 
      <li> <a href="#">菜单1 </a> 
        <ul> 
          <li> <a href="#">菜单1_1 </a> </li> 
          <li> <a href="#">菜单1_2 </a> </li> 
          <li> <a href="#">菜单1_3 </a> </li> 
          <li> <a href="#">菜单1_4 </a> </li> 
          <li> <a href="#">菜单1_5 </a> </li> 
          <li> <a href="#">菜单1_6 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单2 </a> 
        <ul> 
          <li> <a href="#">菜单2_1 </a> </li> 
          <li> <a href="#">菜单2_2 </a> </li> 
          <li> <a href="#">菜单2_3 </a> </li> 
          <li> <a href="#">菜单2_4 </a> </li> 
          <li> <a href="#">菜单2_5 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单3 </a> 
        <ul> 
          <li> <a href="#">菜单3_1 </a> </li> 
          <li> <a href="#">菜单3_2 </a> </li> 
          <li> <a href="#">菜单3_3 </a> </li> 
          <li> <a href="#">菜单3_4 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单4 </a> 
        <ul> 
          <li> <a href="#">菜单4_1 </a> </li> 
          <li> <a href="#">菜单4_2 </a> </li> 
          <li> <a href="#">菜单4_3 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单5 </a> 
        <ul> 
          <li> <a href="#">菜单5_1 </a> </li> 
          <li> <a href="#">菜单5_2 </a> </li> 
        </ul> 
      </li> 
      <li> <a href="#">菜单6 </a> 
        <ul> 
          <li> <a href="#">菜单6_1 </a> </li> 
        </ul> 
      </li> 
    </ul> 
    </body> 
    </html> 
      

  3.   

    楼主也许可以参考一下这个纯CSS的菜单,理论上支持无限级:http://topic.csdn.net/u/20090604/10/d6248fe2-6957-46e0-88df-605bcf78bc65.html
      

  4.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>flyout</title>
    <style type="text/css">
    /* common styling */
    .menu {font-family: arial, sans-serif; width:106px; height:150px; position:relative; margin:0; font-size:11px; margin:50px 0;}
    .menu ul li a, .menu ul li a:visited {display:block; text-decoration:none; color:#000;width:104px; height:20px; text-align:center; color:#fff; border:1px solid #aaa; background:#710069; line-height:20px; font-size:11px; overflow:hidden;}
    .menu ul {padding:0; margin:0;list-style-type: none; }
    .menu ul li {float:left; margin-right:1px; position:relative;}
    .menu ul li ul {display: none;}
    /* specific to non IE browsers */
    .menu ul li:hover a {color:#fff; background:#36f;}
    .menu ul li:hover ul {display:block; position:absolute; top:0; left:105px; width:105px;}
    .menu ul li:hover ul li a.hide {background:#6a3; color:#fff;}
    .menu ul li:hover ul li:hover a.hide {background:#6fc; color:#000;}
    .menu ul li:hover ul li ul {display: none;}
    .menu ul li:hover ul li a {display:block; background:#eee; color:#000;}
    .menu ul li:hover ul li a:hover {background:#6fc; color:#000;}
    .menu ul li:hover ul li:hover ul {display:block; position:absolute; left:105px; top:0;}
    </style>
    <!--[if lte IE 6]>
    <style type="text/css">
    .menu ul li a.hide, .menu ul li a:visited.hide {display:none;}
    .menu ul li a:hover ul li a.hide {display:none;}
    .menu ul li a:hover {color:#fff; background:#36f;}
    .menu ul li a:hover ul {display:block; position:absolute; top:0; left:105px; width:105px;}
    .menu ul li a:hover ul li a.sub {background:#6a3; color:#fff;}
    .menu ul li a:hover ul li a {display:block; background:#eee; color:#000;}
    .menu ul li a:hover ul li a ul {visibility:hidden;}
    .menu ul li a:hover ul li a:hover {background:#6fc; color:#000;}
    .menu ul li a:hover ul li a:hover ul {visibility:visible; position:absolute; left:105px; top:0; color:#000;}
    </style>
    <![endif]-->
    </head>
    <body>
    <div class="menu">
    <ul>
    <li><a class="hide" href="../menu/index.html">DEMOS</a>
    <!--[if lte IE 6]>
    <a href="../menu/index.html">DEMOS
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="../menu/zero_dollars.html" title="The zero dollar ads page">zero dollars</a></li>
    <li><a href="../menu/embed.html" title="Wrapping text around images">wrapping text</a></li>
    <li><a href="../menu/form.html" title="Styling forms">styled form</a></li>
    <li><a href="../menu/nodots.html" title="Removing active/focus borders">active focus</a></li>
    <li><a class="hide" href="../menu/hover_click.html" title="Hover/click with no active/focus borders">HOVER/CLICK &gt;</a>
    <!--[if lte IE 6]>
    <a class="sub" href="../menu/hover_click.html" title="Hover/click with no active/focus borders">HOVER/CLICK &gt;
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="../menu/form.html" title="Styling forms">styled form</a></li>
    <li><a href="../menu/nodots.html" title="Removing active/focus borders">active focus</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a href="../menu/shadow_boxing.html" title="Multi-position drop shadow">shadow boxing</a></li>
    <li><a href="../menu/old_master.html" title="Image Map for detailed information">image map</a></li>
    <li><a href="../menu/bodies.html" title="fun with background images">fun backgrounds</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a class="hide" href="index.html">MENUS</a>
    <!--[if lte IE 6]>
    <a href="index.html">MENUS
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="expand.html" title="an enlarging unordered list">enlarging list</a></li>
    <li><a href="enlarge.html" title="an unordered list with link images">link images</a></li>
    <li><a href="cross.html" title="non-rectangular links">non-rectangular</a></li>
    <li><a href="jigsaw.html" title="jigsaw links">jigsaw links</a></li>
    <li><a href="circles.html" title="circular links">circular links</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a class="hide" href="../layouts/index.html">LAYOUTS</a>
    <!--[if lte IE 6]>
    <a href="../layouts/index.html">LAYOUTS
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="../layouts/body4.html" title="Cross browser fixed layout">Fixed 3</a></li>
    <li><a href="../layouts/body5.html" title="Cross browser fixed layout">Fixed 4</a></li>
    <li><a href="../layouts/minimum.html" title="A simple minimum width layout">minimum width</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a class="hide" href="../boxes/index.html">BOXES</a>
    <!--[if lte IE 6]>
    <a href="../boxes/index.html">BOXES
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="spies.html" title="a coded list of spies">spies menu</a></li>
    <li><a href="enlarge.html" title="an unordered list with link images">link images</a></li>
    <li><a href="cross.html" title="non-rectangular links">non-rectangular</a></li>
    <li><a href="jigsaw.html" title="jigsaw links">jigsaw links</a></li>
    <li><a href="circles.html" title="circular links">circular links</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a class="hide" href="../mozilla/index.html">MOZILLA</a>
    <!--[if lte IE 6]>
    <a href="../mozilla/index.html">MOZILLA
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="#" title="Using content:">content:</a></li>
    <li><a href="../" title=":hover applied to a div">mozzie box</a></li>
    <li><a href="../mozilla/rainbow.html" title="I can build a rainbow">rainbow box</a></li>
    <li><a href="../mozilla/shadow_text.html" title="Shadow text">shadow text</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a class="hide" href="/index.html">EXPLORER</a>
    <!--[if lte IE 6]>
    <a href="../ie/index.html">EXPLORER
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="http://www.codefans.net" title="Example one">example one</a></li>
    <li><a href="#" title="Weft fonts">weft fonts</a></li>
    <li><a href="#" title="Vertical align">vertical align</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    <li><a class="hide" href="/index.html">OPACITY</a>
    <!--[if lte IE 6]>
    <a href="../opacity/index.html">OPACITY
    <table><tr><td>
    <![endif]-->
    <ul>
    <li><a href="http://www.codefans.net" title="colour wheel">opaque colours</a></li>
    <li><a href="http://www.codefans.net" title="a menu using opacity">opaque menu</a></li>
    <li><a href="#" title="partial opacity">partial opacity</a></li>
    <li><a href="#" title="partial opacity II">partial opacity II</a></li>
    </ul>
    <!--[if lte IE 6]>
    </td></tr></table>
    </a>
    <![endif]-->
    </li>
    </ul>
    </div>
    </body>
    </html>网上搜的。
      

  5.   

    sfEls[i].onmouseout=function() {this.className=this.getElementsByTagName("ul")[0].style.left="-999px";} 
    把这句去掉不就不关闭了