js实现二级菜单渐隐显示


Posted in Javascript onNovember 03, 2015

先给大家看一看最终的效果图:

js实现二级菜单渐隐显示

下面就是js实现二级菜单渐隐显示的代码:

<!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=gb2312" />
  <title>导航菜单二级菜单滑动渐隐显示</title>
  <script type="text/javascript" src="js/jquery.js"></script>
  <style type="text/css"> 
    {
      margin: 0;
      padding: 0;
      list-style-type: none;
    }
    a, img
    {
      border: 0;
    }
    a, a:visited
    {
      color: #5e5e5e;
      text-decoration: none;

    }

    a:hover
    {
      color: #333;
      text-decoration: underline;
    }
    body
    {
      font: 12px/180% Arial,Lucida,Verdana, "宋体" ,Helvetica,sans-serif;
      color: #333;
      background: #fff;
    }
    /* navbox */

    .navbox, .nav li, .nav li.current a, .nav li.selected a span, .nav li a.selected, .nav li a.selected span

    {
      background: url(images/headerbg.png) no-repeat;

    }
    .navbox
    {
      height:39px;
      background-position:0 -138px;
      background-repeat:repeat-x;
      position: relative;
      z-index:9;       
    }
    .nav
    {
      width: 960px;
      margin: 0 auto;
    }
    .nav li
    {
      float: left;
      height: 39px;
      background-position: 100% -99px;
      padding: 0 3px 0 2px;
      position: relative;
    }
    .nav li.last
    {
      background: none;
    }
    .nav li a
    {
      float: left;
      display: block;
      padding: 0 0 0 4px;
      height: 39px;
      overflow: hidden;
    }
    .nav li a span
    {
      float: left;
      display: block;
      padding: 0 4px 0 0;
      line-height: 39px;
      font-size: 14px;
      color: #fff;
      font-weight: 800;
      cursor: pointer;
      width: 142px;
      text-align: center;
    }
    .nav li.selected a, .nav li a.selected
    {
      background-position: 0 -60px;
      text-decoration: none;
    }
    .nav li.selected a span, .nav li a.selected span
    {
      background-position: 100% -60px;
      color: #ff7e00;
    }
    .nav li.selected .submenu
    {
      display: block;
    }
    .nav li .submenu
    {
      display: none;
      position: absolute;
      top: 39px;
      left: 6px;
    }
    .nav li .submenu

    {
      border-style: solid;
      border-width: 0px 1px 1px 1px;
      border-color: #ddd;
      padding: 0 5px 5px 5px;
      width: 132px;
      background: #fff;
    }
    .nav li .submenu
    {
      -moz-border-radius: 0 0 3px 3px;
      -webkit-border-radius: 0 0 3px 3px;
      border-radius: 0 0 3px 3px;
      -moz-box-shadow: 0 5px 5px #D3D3D3;
      -webkit-box-shadow: 0 5px 5px #D3D3D3;
      box-shadow: 0 5px 5px #D3D3D3;
    }
    .nav li .submenu li
    {
      float: none;
      padding: 0;
      background: none;

      height:auto;

      border-bottom:dotted 1px #BEBEBE;

    }
    .nav li .submenu li.last
    {
      border: none;
    }
    .nav li .submenu li a
    {
      float:none;
      padding:0;
      text-align:center;
      height:28px;
      line-height:28px;

      background:none;
    }
    .nav li .submenu li a:hover
    {
      background:#ddd;
      font-weight:800; 
    }
  </style>
</head>
<body>
  <script type="text/javascript">
    function dropMenu(obj) {
      $(obj).each(function () {
        var theSpan = $(this);
        var theMenu = theSpan.find(".submenu");
        var tarHeight = theMenu.height();
        theMenu.css({ height: 0, opacity: 0 });
        theSpan.hover(
      function () {
        $(this).addClass("selected");
        theMenu.stop().show().animate({ height: tarHeight, opacity: 1 }, 400);
      },
      function () {
        $(this).removeClass("selected");

        theMenu.stop().animate({ height: 0, opacity: 0 }, 400, function () {
          $(this).css({ display: "none" });

        });
      }
    );
     });
    }
 
    $(document).ready(function () {
      dropMenu(".drop-menu-effect");
    });
  </script>
  <div class="navbox">
    <div class="nav">
      <ul class="clearfix">
        <li><a class="selected" target="_blank" href="javascript:void(0);"><span>网站首页</span></a></li>
        <li class="drop-menu-effect"><a target="_blank" href="javascript:void(0);"><span>内容管理</span></a>
          <ul class="submenu">
            <li><a href="#">普通文章</a></li>
            <li><a href="#">专题文章</a></li>
            <li><a href="#">材料文章</a></li>
          </ul>
        </li>
        <li class="drop-menu-effect"><a target="_blank" href="javascript:void(0);"><span>系统帮助</span></a>
          <ul class="submenu">
            <li><a href="#">参考文档</a></li>
            <li><a href="#">意见反馈</a></li>
            <li><a href="#">官方交流论坛</a></li>
          </ul>
        </li>
      </ul>
    </div>
  </div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
js如何判断用户是否是用微信浏览器
Jun 05 Javascript
js实现DOM走马灯特效的方法
Jan 21 Javascript
js脚本分页代码分享(7种样式)
Aug 19 Javascript
不用一句js代码初始化组件
Jan 27 Javascript
angularjs 中$apply,$digest,$watch详解
Oct 13 Javascript
浅谈Angular中ngModel的$render
Oct 24 Javascript
基于slideout.js实现移动端侧边栏滑动特效
Nov 28 Javascript
Angular 4.x 动态创建表单实例
Apr 25 Javascript
webpack构建的详细流程探底
Jan 08 Javascript
在微信小程序中渲染HTML内容的方法示例
Sep 28 Javascript
微信小程序使用for循环动态渲染页面操作示例
Dec 25 Javascript
微信小程序如何调用图片接口API并居中显示
Jun 29 Javascript
整理JavaScript创建对象的八种方法
Nov 03 #Javascript
JavaScript实现倒计时代码段Item1(非常实用)
Nov 03 #Javascript
jQuery实用技巧必备(下)
Nov 03 #Javascript
JavaScript实现的多种鼠标拖放效果
Nov 03 #Javascript
JavaScript实现的Tween算法及缓冲特效实例代码
Nov 03 #Javascript
jQuery实现Email邮箱地址自动补全功能代码
Nov 03 #Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
Nov 03 #Javascript
You might like
php 什么是PEAR?(第二篇)
2009/03/19 PHP
php运行出现Call to undefined function curl_init()的解决方法
2010/11/02 PHP
Function eregi is deprecated (解决方法)
2013/06/21 PHP
php ctype函数中文翻译和示例
2014/03/21 PHP
php实现可用于mysql,mssql,pg数据库操作类
2014/12/13 PHP
php 生成加密公钥加密私钥实例详解
2017/06/16 PHP
微信公众号之主动给用户发送消息功能
2019/06/22 PHP
javascript中的缓动效果实现程序
2012/12/29 Javascript
wap手机图片滑动切换特效无css3元素js脚本编写
2014/07/28 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
2015/02/26 Javascript
浅谈JS之tagNaem和nodeName
2016/09/13 Javascript
js中利用cookie实现记住密码功能
2020/08/20 Javascript
JS实现JSON.stringify的实例代码讲解
2017/02/07 Javascript
jQuery实现动态显示select下拉列表数据的方法
2018/02/05 jQuery
vuejs 制作背景淡入淡出切换动画的实例
2018/09/01 Javascript
深入浅析Node.js 事件循环、定时器和process.nextTick()
2018/10/22 Javascript
javascript触发模拟鼠标点击事件
2019/06/26 Javascript
微信小程序自定义模态弹窗组件详解
2019/12/24 Javascript
一些Python中的二维数组的操作方法
2015/05/02 Python
python爬取m3u8连接的视频
2018/02/28 Python
python spyder中读取txt为图片的方法
2018/04/27 Python
python调用xlsxwriter创建xlsx的方法
2018/05/03 Python
对Python 内建函数和保留字详解
2018/10/15 Python
Python实现的爬取百度文库功能示例
2019/02/16 Python
python实现AES加密和解密
2019/03/27 Python
Python求均值,方差,标准差的实例
2019/06/29 Python
C语言中一个结构不能包含指向自己的指针吗
2012/05/25 面试题
程序员经常用到的UNIX命令
2015/04/13 面试题
小学国庆节活动方案
2014/02/11 职场文书
预备党员入党自我评价范文
2014/03/10 职场文书
考研英语复习计划
2015/01/19 职场文书
爱心捐款感谢信
2015/01/20 职场文书
运动会开幕式通讯稿
2015/07/18 职场文书
车辆挂靠协议书
2016/03/23 职场文书
创业计划书详解
2019/07/19 职场文书
MySQL不使用order by实现排名的三种思路总结
2021/06/02 MySQL