javascript隐藏动态下拉菜单

swl401 2009-03-10 11:03:13
<div>标题
<table>
下拉框内容
</table>
</div>

<table>及<table>中的下拉框内容是由javascript动态生成放在相应的<div>标题下的。
一个导航菜单有并列的多个上面这样的<div>。
现在希望是当mouse移出下拉框时,将下拉框隐藏起来。
...全文
464 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
happydaisy1985 2009-03-10
  • 打赏
  • 举报
回复
<script type="text/javascript">
function layer_show(layer_name,action){
if(action=="show"){
document.getElementById(layer_name).style.visibility="visible";
}
else if(action=="hide"){
document.getElementById(layer_name).style.visibility="hidden";
}

}
</script>
<p><a href="#" style="text-decoration:none" onMouseover="layer_show('main','show')" onMouseOut="layer_show('main','hide')">主菜单名称</a></p>
<div id="main" style="visibility:hidden; overflow:auto; position:absolute; left: 84px; top: 159px;" ></div>
lz参考看看!
tobyzhou 2009-03-10
  • 打赏
  • 举报
回复
级联菜单?
网上应该有很多的例子吧
搜索一下看看。
Sealoving 2009-03-10
  • 打赏
  • 举报
回复
补充下,用event.toElement去获取鼠标移开所在的对象上,如果对象还是在下拉框中,则不隐藏。
上面复制太快,应该是 if(e.id!=selecet的ID) 如果移开还是在select上 则不隐藏。
Sealoving 2009-03-10
  • 打赏
  • 举报
回复
添加 <BODY><div onmouseover=show() onmouseout=hide()>标题
<table id=tbl style="DISPLAY: none">
下拉框内容
</table>
function hide()
{
var e = event.toElement;
if(e.id!="tbl")
{
tbl.style.display = "none";
}
}
gengzhw 2009-03-10
  • 打赏
  • 举报
回复

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<SCRIPT LANGUAGE=javascript>
<!--
function show() {document.getElementById("tbl").style.display='';}
function hide() {document.getElementById("tbl").style.display='none';}
//-->
</SCRIPT>
</HEAD>
<BODY><div onmouseover=show() onmouseout=hide()>标题
<table id=tbl style="DISPLAY: none">
下拉框内容
</table>
</div>
</BODY></HTML>
luojihaidao 2009-03-10
  • 打赏
  • 举报
回复
可以直接给Table 加个onmouseout 。再说displsy 不就OK 了吗?

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧