offsetHeight报错,只有重复触发时下拉菜单才一点点出现
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
<title>JS实现动画菜单</title>
<style type="text/css">
.nav{
list-style-type:none;
font-size:12px;
font-weight:bold;
}
.navli{
float:left;
position:relative;
}
.navli a{
text-decoration:none;
display:block;
width:80px;
background:#eee;
line-height:20px;
color:#000;
text-align:center;
}
.navli a:hover{
color:#FFF;
background:#F00;
}
.navli ul{
list-style-type:none;
padding:0;
position:absolute;;
display:none;
height:0px;
overflow:hidden;
}
</style>
<script type="text/javascript" >
window.onload= function(){
var navli=document.getElementsByTagName("li");
for(i=0;i<navli.length;i++){
navli[i].onmouseover=function() {
var ulmenu=this.getElementsByTagName("ul")[0];
if(ulmenu !=undefined){
ulmenu.style.display="block";
Addh(ulmenu.id);
}
};
navli[i].onmouseout=function(){
//空
};
}
}
function Addh(id){
var ul=document.getElementById(id);
var h=ul.offsetHeight;
h =h+1;
if(h<=60){
ul.style.height=h+"px";
setTimeout("Addh(' " +id+" ')",10);
}
else{
return;
}
}
</script>
</head>
<body>
<ul>
<li><a href="#" >首页</a></li>
<li><a href="#" >课程大厅+</a>
<ul id="lesson">
<li><a href="#" >前端开发</a> </li>
<li><a href="#" >手机开发</a></li>
<li><a href="#" >后端开发</a></li>
</ul>
</li>
<li><a href="#" >学习中心</a></li>
<li><a href="#" >关于我们</a></li>
</ul>
</body>
</html>