使用jQuery实现的折叠菜单

2星 需积分: 9 12 下载量 29 浏览量 更新于2024-09-15 收藏 1015B TXT 举报
"该资源是一个使用jQuery实现的折叠式菜单示例代码。" 在这个示例中,我们看到一个使用jQuery库来创建交互式折叠菜单的HTML和JavaScript代码。这个菜单结构是一个`<dl>`元素,其中包含多个`<dt>`(定义术语)和`<dd>`(定义描述)对,分别代表菜单的标题和内容部分。菜单的样式是通过CSS未显示的,因为JavaScript将负责控制它们的显示和隐藏。 jQuery库通过`<script>`标签引入,引用了`js/jquery.min.js`,这是jQuery的核心库,使得我们可以使用jQuery提供的方便的DOM操作方法。 核心的jQuery代码如下: ```javascript $(function(){ $('#left dd.body').slideUp(); $('#left dt.head').click(function(){$(this).next('dd.body').slideToggle().siblings('dd.body').slideUp('slow');}); }); ``` 这段代码在页面加载完成后执行,它有两部分功能: 1. `$('#left dd.body').slideUp();` 这行代码会找到所有ID为`left`的父元素下的`dd.body`元素,并将其内容滑动隐藏。这确保页面加载时所有菜单内容都是折叠的。 2. `$('#left dt.head').click(function(){...});` 这行代码给所有ID为`left`的父元素下的`dt.head`元素添加了一个点击事件监听器。当用户点击一个标题(`dt.head`)时,执行内联的函数: - `$(this).next('dd.body').slideToggle();` 选择当前点击的标题元素的下一个兄弟`dd.body`元素,并执行`slideToggle()`方法,使内容区域以滑动效果在展开和折叠之间切换。 - `siblings('dd.body').slideUp('slow');` 找到所有与当前标题同级的其他`dd.body`元素,并以缓慢的速度('slow'参数)滑动隐藏。这样可以确保每次只展示一个菜单项的内容,其他项保持折叠状态。 总结来说,这个代码片段展示了如何使用jQuery实现一个简单的折叠式菜单。当用户点击菜单标题时,相应的菜单内容会以滑动动画的方式展开,同时关闭其他已展开的内容。这是一个常见的交互设计,常用于网站的侧边栏或导航菜单,以节省空间并提高用户体验。