当前位置: 移动技术网 > IT编程>开发语言>JavaScript > JS实现类似百叶窗下拉菜单效果

JS实现类似百叶窗下拉菜单效果

2019年04月01日  | 移动技术网IT编程  | 我要评论

废话不多说了,直接给大家贴代码了,具体代码如下所示:

function leftmove(){
  var oleft_ul=document.getelementbyid('left_ul');
  var aleft_li=oleft_ul.children;//获得左侧ul下的第一个子集li
  var aleft_ul_hidden=oleft_ul.getelementsbytagname('ul');
  var aleft_span_hidden=oleft_ul.getelementsbytagname('span');
  var arr=[];
  var span_arr=[];
  getclassname(aleft_ul_hidden,'cl_hidden',arr)
  getclassname(aleft_span_hidden,'sj',span_arr);
  for(var i=0;i<aleft_li.length;i++){
    aleft_li[i].index=i;
    aleft_li[i].onmouseenter=function(){
      for(var j=0;j<aleft_li.length;j++){
        move(aleft_li[j],{height:40});
        span_arr[j].style.bordercolor='#f2f2f2 #f2f2f2 #f2f2f2 #666';
        span_arr[j].style.top='13px';
        span_arr[j].style.left='8px';
      }
      var ul_height=arr[this.index].children.length*40
      move(aleft_li[this.index],{height:40+ul_height});
      span_arr[this.index].style.bordercolor='#666 #0ad #0ad #0ad';
      span_arr[this.index].style.top='17px';
      span_arr[this.index].style.left='6px';
    };
    aleft_li[i].onmouseleave=function(){
      for(var j=0;j<aleft_li.length;j++){
        move(aleft_li[j],{height:40});
        span_arr[j].style.bordercolor='#f2f2f2 #f2f2f2 #f2f2f2 #666';
        span_arr[j].style.top='13px';
        span_arr[j].style.left='8px';
      }
    };
    arr[i].onmouseover=function(){
      for(var i=0;i<arr.length;i++){
        span_arr[i].style.bordercolor='#f2f2f2 #f2f2f2 #f2f2f2 #666';
        span_arr[i].style.top='13px';
        span_arr[i].style.left='8px';
      }
      span_arr[this.parentnode.index].style.bordercolor='#666 #f2f2f2 #f2f2f2 #f2f2f2';
      span_arr[this.parentnode.index].style.top='17px';
      span_arr[this.parentnode.index].style.left='6px';
    };
    arr[i].onmouseout=function(){
      for(var i=0;i<arr.length;i++){
        span_arr[i].style.bordercolor='#f2f2f2 #f2f2f2 #f2f2f2 #666';
        span_arr[i].style.top='13px';
        span_arr[i].style.left='8px';
      }
      span_arr[this.parentnode.index].style.bordercolor='#666 #0ad #0ad #0ad';
      span_arr[this.parentnode.index].style.top='17px';
      span_arr[this.parentnode.index].style.left='6px';
    };
  }
}
leftmove();

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网