style为空或不是对象 var subMenu = li.getElementsByTagName("ul")[0];换成 var subMenu = document.getElementsByTagName("ul")[0];试试 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 原因: <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)"> <a href="edit.aspx">管理联系人 </a> </li>中没有<ul>try: <script type="text/javascript"> function displaySubMenu(li) { var subMenu = li.getElementsByTagName("ul")[0]; if (subMenu) subMenu.style.display = "block";//-------------------------这里出错 } function hideSubMenu(li) { var subMenu = li.getElementsByTagName("ul")[0]; if (subMenu) subMenu.style.display = "none"; } </script> <script type="text/javascript"> function displaySubMenu(li) { var subMenu = document.getElementById('test'); subMenu.style.display = "block";//-------------------------这里出错 } function hideSubMenu(li) { var subMenu = document.getElementById('test'); subMenu.style.display = "none"; } </script><ul id="navigation"> <li onMouseOver="displaySubMenu(this)" onMouseOut="hideSubMenu(this)"> <a href="edit.aspx">管理联系人 </a> </li> <li onMouseOver="displaySubMenu(this)" onMouseOut="hideSubMenu(this)"> <a href="#">订阅事件 </a> <ul id="test"> <li><a href="editbuild.aspx">订阅版本质量更改事件</a></li> <li><a href="editbuildcompletion.aspx">订阅版本完成事件</a></li> </ul> </li> </ul> 接上 function displaySubMenu(li) { var subMenu = document.getElementById('test'); subMenu.style.display = "block";//-------------------------这里出错 } function hideSubMenu(li) { var subMenu = document.getElementById('test');if(subMenu){subMenu.style.display = "none";} } </script> 这个是因为找不到ul导致的错误,在触发事件的时候,判断下是否存在这个元素下面的代码搞定<!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" /><title>无标题文档</title></head><body> <style type="text/css"> * { padding:0; margin:0; } body { font-family:verdana, sans-serif; font-size:small; } li ul { list-style-type:none; } #navigation { margin:20px; } li { float:left; text-align:center; position:relative; } li a:link, #navigation li a:visited { display:block; text-decoration:none; color:#000; width:150px; height:40px; line-height:40px; border:1px solid #fff; border-width:1px 1px 0 0; background:#c5dbf2; padding-left:10px; } li a:hover { color:#fff; background:#2687eb; } li ul li a:hover { color:#fff; background:#6b839c; } li ul { display:none; position:absolute; top:40px; left:0; margin-top:1px; width:120px; } li ul li ul { display:none; position:absolute; top:0px; left:130px; margin-top:0; margin-left:1px; width:120px; } </style> <script type="text/javascript"> function displaySubMenu(li) { var subMenu = li.getElementsByTagName("ul"); if(subMenu.length>0) { subMenu[0].style.display = "block"; } } function hideSubMenu(li) { var subMenu = li.getElementsByTagName("ul"); if(subMenu.length>0) { subMenu[0].style.display = "none"; } } </script> <ul id="navigation"> <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)"> <a href="edit.aspx">管理联系人 </a> </li> <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)"> <a href="#">订阅事件 </a> <ul> <li><a href="editbuild.aspx">订阅版本质量更改事件</a></li> <li><a href="editbuildcompletion.aspx">订阅版本完成事件</a></li> </ul> </li> </ul></body></html> 因为你第一个菜单没有子菜单,当鼠标移上去,subMenu为空,就出错了。<html><style type="text/css"> * { padding:0; margin:0; } body { font-family:verdana, sans-serif; font-size:small; } li ul { list-style-type:none; } #navigation { margin:20px; } li { float:left; text-align:center; position:relative; } li a:link, #navigation li a:visited { display:block; text-decoration:none; color:#000; width:150px; height:40px; line-height:40px; border:1px solid #fff; border-width:1px 1px 0 0; background:#c5dbf2; padding-left:10px; } li a:hover { color:#fff; background:#2687eb; } li ul li a:hover { color:#fff; background:#6b839c; } li ul { display:none; position:absolute; top:40px; left:0; margin-top:1px; width:120px; } li ul li ul { display:none; position:absolute; top:0px; left:130px; margin-top:0; margin-left:1px; width:120px; } </style> <script type="text/javascript"> function displaySubMenu(li) { var subMenu = li.getElementsByTagName("ul")[0]; if(subMenu) subMenu.style.display = "block"; //-------------------------这里出错 } function hideSubMenu(li) { var subMenu = li.getElementsByTagName("ul")[0]; if(subMenu) subMenu.style.display = "none"; } </script> </head><body> <form id="form1" runat="server"> <ul id="navigation"> <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)"> <a href="edit.aspx">管理联系人 </a> </li> <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)"> <a href="#">订阅事件 </a> <ul> <li><a href="editbuild.aspx">订阅版本质量更改事件</a></li> <li><a href="editbuildcompletion.aspx">订阅版本完成事件</a></li> </ul> </li> </ul> </form></body></html> JS获取客户端操作系统类型 一段简单的js代码求高人指点,新年发财! jquery mouseenter mouseout 多次 求肋jquery传值的问题 勾选table一行的checkbox时候,如何把这一行的值添加到父页面的table中 用JS写入文本发生异常 100分`解决个问题``就是网站放`设置首页`代码`打开后`会弹出风险`阻拦` 为我解决FCKEditor问题的,在这里接着领分, 时钟效果的实现 在线等待,如何在浮动图片上加入动作! 谁有JavaScript生成的Tree的例子啊? 给下拉框赋值的问题----出错了
<a href="edit.aspx">管理联系人 </a>
</li>
中没有<ul>try: <script type="text/javascript">
function displaySubMenu(li) {
var subMenu = li.getElementsByTagName("ul")[0];
if (subMenu) subMenu.style.display = "block";//-------------------------这里出错
}
function hideSubMenu(li) {
var subMenu = li.getElementsByTagName("ul")[0];
if (subMenu) subMenu.style.display = "none";
}
</script>
function displaySubMenu(li) {
var subMenu = document.getElementById('test');
subMenu.style.display = "block";//-------------------------这里出错
}
function hideSubMenu(li) {
var subMenu = document.getElementById('test');
subMenu.style.display = "none";
}
</script><ul id="navigation">
<li onMouseOver="displaySubMenu(this)" onMouseOut="hideSubMenu(this)">
<a href="edit.aspx">管理联系人 </a>
</li>
<li onMouseOver="displaySubMenu(this)" onMouseOut="hideSubMenu(this)">
<a href="#">订阅事件 </a>
<ul id="test"> <li><a href="editbuild.aspx">订阅版本质量更改事件</a></li>
<li><a href="editbuildcompletion.aspx">订阅版本完成事件</a></li>
</ul>
</li>
</ul>
function displaySubMenu(li) { var subMenu = document.getElementById('test');
subMenu.style.display = "block";//-------------------------这里出错
}
function hideSubMenu(li) {
var subMenu = document.getElementById('test');
if(subMenu)
{
subMenu.style.display = "none";
}
}
</script>
下面的代码搞定<!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" />
<title>无标题文档</title>
</head>
<body>
<style type="text/css">
* {
padding:0;
margin:0;
}
body {
font-family:verdana, sans-serif;
font-size:small;
}
li ul {
list-style-type:none;
}
#navigation {
margin:20px;
}
li {
float:left;
text-align:center;
position:relative;
}
li a:link, #navigation li a:visited {
display:block;
text-decoration:none;
color:#000;
width:150px;
height:40px;
line-height:40px;
border:1px solid #fff;
border-width:1px 1px 0 0;
background:#c5dbf2;
padding-left:10px;
}
li a:hover {
color:#fff;
background:#2687eb;
}
li ul li a:hover {
color:#fff;
background:#6b839c;
}
li ul {
display:none;
position:absolute;
top:40px;
left:0;
margin-top:1px;
width:120px;
}
li ul li ul {
display:none;
position:absolute;
top:0px;
left:130px;
margin-top:0;
margin-left:1px;
width:120px;
}
</style>
<script type="text/javascript">
function displaySubMenu(li) {
var subMenu = li.getElementsByTagName("ul");
if(subMenu.length>0)
{
subMenu[0].style.display = "block";
}
}
function hideSubMenu(li) {
var subMenu = li.getElementsByTagName("ul");
if(subMenu.length>0)
{
subMenu[0].style.display = "none";
}
}
</script>
<ul id="navigation">
<li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">
<a href="edit.aspx">管理联系人 </a>
</li>
<li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">
<a href="#">订阅事件 </a>
<ul>
<li><a href="editbuild.aspx">订阅版本质量更改事件</a></li>
<li><a href="editbuildcompletion.aspx">订阅版本完成事件</a></li>
</ul>
</li>
</ul></body>
</html>
<html>
<style type="text/css">
* {
padding:0;
margin:0;
}
body {
font-family:verdana, sans-serif;
font-size:small;
}
li ul {
list-style-type:none;
}
#navigation {
margin:20px;
}
li {
float:left;
text-align:center;
position:relative;
}
li a:link, #navigation li a:visited {
display:block;
text-decoration:none;
color:#000;
width:150px;
height:40px;
line-height:40px;
border:1px solid #fff;
border-width:1px 1px 0 0;
background:#c5dbf2;
padding-left:10px;
}
li a:hover {
color:#fff;
background:#2687eb;
}
li ul li a:hover {
color:#fff;
background:#6b839c;
}
li ul {
display:none;
position:absolute;
top:40px;
left:0;
margin-top:1px;
width:120px;
}
li ul li ul {
display:none;
position:absolute;
top:0px;
left:130px;
margin-top:0;
margin-left:1px;
width:120px;
}
</style>
<script type="text/javascript">
function displaySubMenu(li) {
var subMenu = li.getElementsByTagName("ul")[0];
if(subMenu) subMenu.style.display = "block"; //-------------------------这里出错
}
function hideSubMenu(li) {
var subMenu = li.getElementsByTagName("ul")[0];
if(subMenu) subMenu.style.display = "none";
}
</script>
</head>
<body>
<form id="form1" runat="server">
<ul id="navigation">
<li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">
<a href="edit.aspx">管理联系人 </a>
</li>
<li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">
<a href="#">订阅事件 </a>
<ul>
<li><a href="editbuild.aspx">订阅版本质量更改事件</a></li>
<li><a href="editbuildcompletion.aspx">订阅版本完成事件</a></li>
</ul>
</li>
</ul>
</form>
</body>
</html>