问答详情
源自:6-2 编程挑战

为什么我这个鼠标移开没有隐藏二级菜单?

<script>

window.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) {

            var This = oSubNav;

            clearInterval(This.time);

            This.time=setInterval(function(){

                This.style.height=This.offsetHeight+16+"px";

                if(This.offsetHeight>=120)

                clearInterval(This.time);

                },30)

        }

}

        //鼠标离开菜单,二级菜单动画收缩起来。

aLi[i].onmouseout=function(){

var oSubNav=this.getElementsByTagName('ul')[0];

if(oSubNav){

  var This = oSubNav;

  clearInterval(This.time);

  This.time=setInterval(function(){

      This.style.height=This.offSetHeight-16+"px";

      if(This.offsetHeight<=0){

          This.style.height=0;

          This.style.overflow = hidden;

          clearInterval(This.time);

      }

      },30)

}

}

}

}

</script>



提问者:zozor_訣擇0_0 2019-07-30 10:52

个回答

  • zozor_訣擇0_0
    2019-07-30 15:41:33

    ?问题找到了,offSetHeight这里拼错了 ,头大了。。。。