• B
    • C"/>

      广州明生医药有限公司

      关于我们 健康生活

      • 关于我们
      • 健康生活

      基于Jquery代码实现手风琴菜单

      网络编程 基于Jquery代码实现手风琴菜单 06-21

      先给大家展示效果图:

      查看图片

      先看页面代码,列表的嵌套:

      <div id="menuDiv">
        <ul id="menu">
          <li class="parentLi">
            <span>B</span>
            <ul class="childrenUl">
              <li class="childrenLi"><span>C</span></li>
              <li class="childrenLi"><span>C</span></li>
              <li class="childrenLi"><span>C</span></li>
            </ul>
          </li>
          <li class="parentLi">
            <span>B</span>
            <ul class="childrenUl">
              <li class="childrenLi"><span>C</span></li>
              <li class="childrenLi"><span>C</span></li>
              <li class="childrenLi"><span>C</span></li>
            </ul>
          </li>
          <li class="parentLi">
            <span>B</span>
            <ul class="childrenUl">
              <li class="childrenLi"><span>C</span></li>
              <li class="childrenLi"><span>C</span></li>
              <li class="childrenLi"><span>C</span></li>
            </ul>
          </li>
        </ul>
      </div>

       css 代码,主要设置背景色和子菜单左边框的样式,设置悬浮和选中的样式,开始设置子菜单不显示(通过 js 设置点击之后再显示):

      #menuDiv{
        width: 200px;
        background-color: #029FD4;
      }
      .parentLi
      {
        width: 100%;
        line-height: 40px;
        margin-top: 1px;
        background: #1C73BA;
        color: #fff;
        cursor: pointer;
        font-weight:bolder;
      }
      .parentLi span
      {
        padding: 10px;
      }
      .parentLi:hover, .selectedParentMenu
      {
        background: #0033CC;
      }
      .childrenUl
      {
        background-color: #ffffff;
        display: none;
      }
      .childrenLi
      {
        width: 100%;
        line-height: 30px;
        font-size: .9em;
        margin-top: 1px;
        background: #63B8FF;
        color: #000000;
        padding-left: 15px;
        cursor: pointer;
      }
      .childrenLi:hover, .selectedChildrenMenu
      {
        border-left: 5px #0033CC solid;
        background: #0099CC;
        padding-left: 15px;
      }

        接下来就是点击事件的代码:

      $(".parentLi").click(function(event) {
          $(this).children('.childrenUl').slideToggle();
        });
        $(".childrenLi").click(function(event) {
          event.stopPropagation();
          $(".childrenLi").removeClass('selectedChildrenMenu');
          $(".parentLi").removeClass('selectedParentMenu');
          $(this).parents(".parentLi").addClass('selectedParentMenu');
          $(this).addClass('selectedChildrenMenu');
        });

      需要注意的是列表嵌套,会导致事件冒泡,所以在子菜单的点击事件里面要组织冒泡,event.stopPropagation();

      以上代码很简单,代码就是注释,jquery手风琴菜单就实现了。需要的朋友快来参考下吧。

      jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
      事件绑定的方法有很多种,使用了jquery那么原理那种绑定方式(elem.click=function(){...}))就不太想推荐给大家了。最主要的原因是elem.click=fn这种方式只能绑

      jQuery-1.9.1源码分析系列(十)事件系统之事件体系结构
      又是一个重磅功能点。在分析源码之前分析一下体系结构,有助于源码理解。实际上在jQuery出现之前,DeanEdwards的跨浏览器AddEvent()设计做的已经比较优

      jquery实现表格隔行换色效果
      本文实例讲述了jquery实现表格隔行换色效果的代码。分享给大家供大家参考。具体如下:运行效果截图如下:具体代码如下:1、新建一个web项目,jQuery


      编辑:广州明生医药有限公司

      标签:事件,代码,源码,菜单,绑定

      分享:
      • 快速搭建局域网ftp服务器,提高文件传输效率 (局域网ftp服务器搭建)
      • 阿里云备案查询方法详解 (怎么知道域名是不是在阿里云备的案)
      • 连接云服务器的方法和步骤简介 (怎么连接到云服务器)
      • 北京有哪些主机厂? (北京有那些主机厂)
      • 精神掌控力:Psychz VPS让你一站式体验虚拟主机服务 (psychz vps)
      • CentOS服务器如何开启? (centos 开启服务器)
      • 景安VPS备案指南,轻松上线网站 (景安vps备案)
      • 阿里云快照:轻松建立系统备份! (阿里云建立快照)
      • 高性能云硬盘提升腾讯云服务器性能 (腾讯云服务器云硬盘)
      • 高效安全的BeianIDC高防云服务器,保障您的网站稳定运行 (高防云服务器beianidc)
      © 祺平科技 • 版权所有 粤ICP备2023061218号     技术支持  www.zmcms.com