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 相关文章推荐
jquery动态增加text元素以及删除文本内容实例代码
Jul 01 Javascript
JQuery事件e参数的方法preventDefault()取消默认行为
Sep 26 Javascript
javascript单页面手势滑屏切换原理详解
Mar 21 Javascript
AngularJS入门教程之MVC架构实例分析
Nov 01 Javascript
React实现点击删除列表中对应项
Jan 10 Javascript
微信小程序实现动态设置页面标题的方法【附源码下载】
Nov 29 Javascript
详解webpack多页面配置记录
Jan 22 Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 Javascript
使用webpack搭建vue项目实现脚手架功能
Mar 15 Javascript
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
Apr 28 Javascript
Vue 的双向绑定原理与用法揭秘
May 06 Javascript
JavaScript前端面试组合函数
Jun 21 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 目录与文件处理-郑阿奇(续)
2011/07/04 PHP
PHP获取音频文件的相关信息
2015/06/22 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
PHP的Json中文处理解决方案
2016/09/29 PHP
php输出图像的方法实例分析
2017/02/16 PHP
php获取linux命令结果的实例
2017/03/13 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
2017/06/17 PHP
在 Laravel 中动态隐藏 API 字段的方法
2019/10/25 PHP
利用location.hash实现跨域iframe自适应
2010/05/04 Javascript
IE6/7/8/9不支持exec的简写方式
2011/05/25 Javascript
javaScript实现浮点数转十六进制字符
2013/10/29 Javascript
jQuery 删除或是清空某个HTML元素示例
2014/08/04 Javascript
JS实现的倒计时效果实例(2则实例)
2015/12/23 Javascript
jQuery EasyUI Pagination实现分页的常用方法
2016/05/21 Javascript
JavaScript程序中实现继承特性的方式总结
2016/06/24 Javascript
javascript实现滚动效果的数字时钟实例
2016/07/21 Javascript
js中json处理总结之JSON.parse
2016/10/14 Javascript
vue开发心得和技巧分享
2016/10/27 Javascript
jQuery弹出层插件popShow用法示例
2017/01/23 Javascript
利用Vue.js框架实现火车票查询系统(附源码)
2017/02/27 Javascript
jQuery插件FusionCharts实现的Marimekko图效果示例【附demo源码】
2017/03/24 jQuery
VUE组件中的 Drawer 抽屉实现代码
2019/08/06 Javascript
关于vue属性使用和不使用冒号的区别说明
2020/10/22 Javascript
[01:00:12]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第一场
2018/04/09 DOTA
python读取注册表中值的方法
2013/04/08 Python
Python装饰器实现几类验证功能做法实例
2017/05/18 Python
django 发送手机验证码的示例代码
2018/04/25 Python
Python使用win32 COM实现Excel的写入与保存功能示例
2018/05/03 Python
基于OpenCV python3实现证件照换背景的方法
2019/03/22 Python
Python如何生成xml文件
2020/06/04 Python
详解CSS3的box-shadow属性制作边框阴影效果的方法
2016/05/10 HTML / CSS
英国受欢迎的运动鞋和街头服装商店:Footasylum
2018/06/12 全球购物
五一劳动节演讲稿
2014/09/12 职场文书
法制教育观后感
2015/06/17 职场文书
关于MySQL中的 like操作符详情
2021/11/17 MySQL
spring注解 @PropertySource配置数据源全流程
2022/03/25 Java/Android