zoukankan      html  css  js  c++  java
  • 【前端积累】二级菜单,鼠标滑过的时候子菜单显示,当鼠标离开的时候子菜单隐藏

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>动画菜单</title>
    <style type="text/css">
    * { margin: 0; padding: 0; font-size: 14px; }
    a { color: #333; text-decoration: none }
    ul{ list-style: none; }
    .nav {height: 30px; border-bottom: 5px solid #F60; margin-left:50px; width:600px;}
    .nav li { float: left; position:relative; height:30px; width:120px }
    .nav li a { display: block; height: 30px; text-align: center; line-height: 30px; width:120px; background: #efefef; margin-left: 1px; }
    .subNav{ position:absolute; top:30px; left:0; width:120px; height:0; overflow:hidden}
    .subNav li a{ background:#ddd }
    .subNav li a:hover{ background:#efefef}
    </style>
    <script>
    window.onload=function(){
    var aLi=document.getElementsByTagName('li');
    for(var i=0; i<aLi.length; i++){
    aLi[i].onmouseover=function(){
    //鼠标经过一级菜单,二级菜单动画下拉显示出来
    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(){
    
    if(oSubNav){
    var This=oSubNav;
    clearInterval(This.time);
    This.time=setInterval(function(){
    This.style.height=This.offsetHeight-16+"px";
    if(This.offsetHeight<=0)
    clearInterval(This.time);
    },30)
    }
    
    }
    
    
    }
    }
    </script>
    </head>
    <body>
    <ul class="nav">
    <li><a href="#">一级菜单</a>
    <ul class="subNav">
    <li><a href="#">二级菜单</a></li>
    <li><a href="#">二级菜单</a></li>
    <li><a href="#">二级菜单</a></li>
    <li><a href="#">二级菜单</a></li>
    </ul>
    </li>
    <li><a href="#">一级菜单</a>
    <ul class="subNav">
    <li><a href="#">二级菜单</a></li>
    <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>
    <li><a href="#">一级菜单</a></li>
    </ul>
    </body>
    </html>
  • 相关阅读:
    通配符
    Hibernate入门简介
    Java的参数传递是值传递?
    Java线程详解
    java基础总结
    谈谈对Spring IOC的理解
    Oracle SQL语句之常见优化方法总结--不定更新
    JVM 工作原理和流程
    Java中的String为什么是不可变的? -- String源码分析
    Spring AOP 简介
  • 原文地址:https://www.cnblogs.com/dream-to-pku/p/6039158.html
Copyright © 2011-2022 走看看