为什么我将oSubNav.time 改成一个普通变量 timer就不行了
indow.onload=function(){
var aLi=document.getElementsByTagName('li');
for(var i=0; i<aLi.length; i++){
aLi[i].onmouseover=function(){
var oSubNav=this.getElementsByTagName('ul')[0];
if(oSubNav){
clearInterval(timer);
var timer=setInterval(function(){
oSubNav.style.height=oSubNav.offsetHeight+16+"px";
if(oSubNav.offsetHeight>=120)
clearInterval(timer);
},30)
}
}
//鼠标离开菜单,二级菜单动画收缩起来。
aLi[i].onmouseout=function(){
var oSubNav=this.getElementsByTagName('ul')[0];
if(oSubNav){
clearInterval(timer);
var timer=setInterval(function(){
oSubNav.style.height=oSubNav.offsetHeight-16+"px";
if(oSubNav.offsetHeight<=0)
clearInterval(timer);
},30)
}
}
}
}
程序就出BUG了,鼠标滑到li标签,窗口也会弹回,一定要建立对象的属性来保存setInterval的返回值吗