在线求一个关于下拉菜单的处理
页面代码如下:
<!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=gb2312 " />
<style type= "text/css ">
<!--
*{margin:0;padding:0;border:0;}
body {
font-family: arial, 宋体, serif;
font-size:12px; background:#eee;
}
#nav {
line-height: 24px; list-style-type: none; background:#666; width:100%
}
#nav a {
display: block; width: 90px; text-align:center;background:#666;
}
#nav a:link {
color:#ffffff; text-decoration:none;
}
#nav a:visited {
color:#ffffff;text-decoration:none;
}
#nav a:hover {
color:#FFF;text-decoration:none;font-weight:bold;
}
#nav li {
float: left; width: auto; background:#E9EBED;
}
#nav li a:hover{
background:#999;
}
#nav li ul {
line-height: 27px; list-style-type: none;text-align:left;
left: -999em; width: 1280px; position: absolute; float:left;color:#fff; background: #E9EBED;
}
#nav li ul li{
float: left; width: auto;
background: #E9EBED;
}
#nav li ul a{
display: block; width: auto;text-align:center;color:#fff;background: #E9EBED;
}
#nav li ul a:link {
color:#666;text-decoration:none;background: #E9EBED;
}
#nav li ul a:visited {
color:#666;text-decoration:none;background: #E9EBED;
}
#nav li ul a:hover {
color:#666;text-decoration:underline;font-weight:normal;background: #E9EBED;
}
#nav li:hover ul {
left: 0;background: #E9EBED;
}
#nav li.sfhover ul {
left: 0;background: #E9EBED;
}
#content {
clear: left;
}
-->
</style>
<script type=text/javascript>
function menuFix() {
var sfEls = document.getElementById( "nav ").getElementsByTagName( "li ");
for (var i=0; i <sfEls.length; i++) {
sfEls[i].onmouseover=function() {
this.className+=(this.className.length> 0? " ": " ") + "sfhover ";
}
sfEls[i].onMouseDown=function() {
this.className+=(this.className.length> 0? " ": " ") + "sfhover ";
}
sfEls[i].onMouseUp=function() {
this.className+=(this.className.length> 0? " ": " ") + "sfhover ";
}
sfEls[i].onmouseout=function() {
this.className=this.className.replace(new RegExp( "( ?|^)sfhover\\b "), " ");
}
}
}
window.onload=menuFix;
</script>
</head>
<body>
<div id= "nav ">
<li> <a href= "url1 " target= "mainFrame "> 标题1 </a>
</li>
<li> <a href= "# " > 标题1 </a>
<ul>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
</ul>
</li>
<li> <a href= "# " > 标题1 </a>
<ul>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
</ul>
</li>
<li> <a href= "# " > 标题1 </a>
<ul>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
</ul>
</li>
<li> <a href= "url1 " target= "mainFrame "> 标题1 </a>
</li>
<li> <a href= "url1 " target= "mainFrame "> 标题1 </a>
</li>
<li> <a href= "# " > 标题1 </a>
<ul>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
<li> <a href= "url2 " target= "mainFrame "> 标题2 | </a> </li>
</ul>
</li>
</div>
</body>
</html>
--------------------------------------------------
现在是鼠标移到一个有下拉菜单的地方,下层菜单就显示,如果移开就消失,我想改成 移到有下拉菜单的地方,下层菜单就显示,移开的时候不消失,只有当移动到另外一个有下拉菜单的按钮时才发生改变,请各位帮帮了
[解决办法]
<script type=text/javascript>
function menuFix() {
var sfEls = document.getElementById( "nav ").getElementsByTagName( "li ");
for (var i=0; i <sfEls.length; i++) {
sfEls[i].onmouseover=function() {
for(var j=0;j <sfEls.length;j++){
sfEls[j].className=sfEls[j].className.replace(new RegExp( "( ?|^)sfhover\\b "), " ");
}
this.className+=(this.className.length> 0? " ": " ") + "sfhover ";
}
sfEls[i].onMouseDown=function() {
this.className+=(this.className.length> 0? " ": " ") + "sfhover ";
}
sfEls[i].onMouseUp=function() {
this.className+=(this.className.length> 0? " ": " ") + "sfhover ";
}
}
}
window.onload=menuFix;
</script>