出现的现问题
集合是没有display属性的,集合中的元素才有display属性。当你试图做 集合.style.display的时候,自然会报错。
错误
var odl =obj.getElementsByTagName(“dl”);
odl.style.display = “block”;
正确
var odl =obj.getElementsByTagName(“dl”)[0];
odl.style.display = “block”;
详情:https://blog.csdn.net/weixin_42636552/article/details/88227920
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><title>15-3下拉菜单练习</title><style type="text/css">*{margin: 0; padding: 0;}ul,li{list-style: none;}#menuBox{width: 600px;margin: 30px auto;background-color: #eeeeee;border: 1px solid #cccccc;height: 40px;line-height: 40px;}#nemus li{float:left;}#nemus li a{display: block;width:140px;text-decoration: none;color:#000;text-align: center;}#nemus li dl{border: 1px solid #ccc;background-color: #eeeeee;width: 138px;}#nemus li dl dt{border-bottom: 1px solid #ccc;}</style><script type="text/javascript">//鼠标挪动到标签上function showMenu(obj) {var odl =obj.getElementsByTagName("dl")[0];odl.style.display = "block";}//鼠标挪开function hideMenu(obj) {var odl = obj.getElementsByTagName("dl")[0];odl.style.display = "none";}</script></head><body><div id ="menuBox"><ul id="nemus"><li><a href="#">首页</a></li><li onmousemove="showMenu(this)" onmouseout="hideMenu(this)"><a href="#">新闻</a><dl style="display: none;"><dt>国际动态</dt><dt>国内要闻</dt></dl></li><li onmousemove="showMenu(this)" onmouseout="hideMenu(this)"><a href="#">游戏下载</a><dl style="display:none;"><dt>射击</dt><dt>动作</dt><dt>单机</dt><dt>装扮</dt></dl></li><li><a href="#">关于我们</a></li></ul></div></body></html>
