前端开发社区前端开发社区
  • 首页
  • VUE.js
  • React.js
  • HTML
  • CSS
  • JavaScript
  • PHP
  • jquery
  • Java
  • MySQL
  • uniapp
前端开发社区
当前位置:首页 > jquery

jquery折叠菜单

2026-04-08 14:12:04jquery

使用 jQuery 实现折叠菜单

HTML 结构

<div class="menu">
  <div class="menu-item">
    <div class="menu-header">菜单标题 1</div>
    <div class="menu-content">
      <a href="#">子菜单 1</a>
      <a href="#">子菜单 2</a>
    </div>
  </div>
  <div class="menu-item">
    <div class="menu-header">菜单标题 2</div>
    <div class="menu-content">
      <a href="#">子菜单 3</a>
      <a href="#">子菜单 4</a>
    </div>
  </div>
</div>

CSS 样式

.menu-content {
  display: none;
  padding: 10px;
}
.menu-header {
  cursor: pointer;
  padding: 10px;
  background-color: #f0f0f0;
}
.menu-header:hover {
  background-color: #e0e0e0;
}

jQuery 代码

$(document).ready(function() {
  $('.menu-header').click(function() {
    $(this).next('.menu-content').slideToggle();
  });
});

实现多级折叠菜单

HTML 结构

<div class="multi-menu">
  <div class="menu-item">
    <div class="menu-header">父菜单 1</div>
    <div class="menu-content">
      <div class="menu-item">
        <div class="menu-header">子菜单 1</div>
        <div class="menu-content">
          <a href="#">选项 1</a>
          <a href="#">选项 2</a>
        </div>
      </div>
    </div>
  </div>
</div>

jQuery 代码

$(document).ready(function() {
  $('.multi-menu .menu-header').click(function(e) {
    e.stopPropagation();
    $(this).next('.menu-content').slideToggle();
  });
});

添加展开/折叠图标

HTML 修改

<div class="menu-header">
  菜单标题
  <span class="menu-icon">+</span>
</div>

jQuery 修改

$(document).ready(function() {
  $('.menu-header').click(function() {
    $(this).next('.menu-content').slideToggle();
    $(this).find('.menu-icon').text(function(_, text) {
      return text === '+' ? '-' : '+';
    });
  });
});

实现手风琴效果

jQuery 代码

jquery折叠菜单

$(document).ready(function() {
  $('.menu-header').click(function() {
    $(this).next('.menu-content').slideToggle();
    $(this).parent().siblings().find('.menu-content').slideUp();
  });
});

注意事项

  • 确保在页面中正确引入 jQuery 库
  • 菜单项的 class 名称需要保持一致
  • 可以通过 CSS 进一步美化菜单样式
  • 移动端适配可能需要额外的媒体查询

这些方法提供了从基础到进阶的 jQuery 折叠菜单实现方案,可以根据实际需求选择合适的实现方式。

标签: 菜单jquery
分享给朋友:

相关文章

vue无限菜单怎么实现

vue无限菜单怎么实现

实现 Vue 无限菜单的方法 递归组件实现嵌套菜单 使用 Vue 的递归组件特性可以轻松实现无限级嵌套菜单。通过组件调用自身的方式处理嵌套数据。 <template> <ul&…

vue 菜单实现

vue 菜单实现

Vue 菜单实现方法 基于路由的动态菜单 在 Vue 项目中,可以利用 Vue Router 实现动态菜单。首先定义路由配置,包含菜单所需的元信息(如标题、图标等)。 const routes =…

css菜单制作

css菜单制作

CSS 菜单制作方法 水平导航菜单 使用 display: inline-block 或 flexbox 可以轻松创建水平导航菜单。以下是一个基本示例: <nav> <ul c…

锋利的jquery

锋利的jquery

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。其核心特点是“写得更少,做得更多”,适合快速开发动态网…

js jquery

js jquery

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它兼容多种浏览器,提供易于使用的 API,使开发者能够…

jquery标签

jquery标签

jQuery 标签操作 jQuery 提供了多种方法来操作 HTML 标签(元素),包括创建、修改、删除和遍历等。以下是常用的 jQuery 标签操作方法: 选择标签 使用选择器获取 HTML 元素…

最新文章
  • java子类如何调用父类的方法

    2026-04-09 08:54:50

  • java如何定义一个类

    2026-04-09 08:51:25

  • java 如何四舍五入

    2026-04-09 08:49:47

  • java如何四舍五入

    2026-04-09 08:48:15

  • java如何输出数组中的数组

    2026-04-09 08:45:31

标签列表
  • vue (13931)
  • 原理 (626)
  • 分页 (603)
  • 跳转 (582)
  • 页面 (1094)
  • 路由 (650)
  • 列表 (473)
  • 功能 (1256)
  • 文件 (456)
  • 项目 (532)
  • 菜单 (444)
  • 组件 (1026)
  • 表格 (673)
  • 数据 (497)
  • 图片 (790)
  • js (4916)
  • 如何实现 (1693)
  • 效果 (625)
  • react (3311)
  • jquery (2238)
  • css (2728)
  • php (4572)
  • java (3021)
  • uniapp (1363)
  • elementui (828)

陕ICP备2023000799号  网站地图

Powered By Z-BlogPHP. Theme by TOYEAN.