jquery使用动画实现二级菜单的展开和收缩效果。点鼠标点击一级菜单,其对应的二级菜单展开,其他的二级菜单隐藏。
时间: 2024-10-24 20:05:15 浏览: 39
基于jQuery实现左侧菜单栏可折叠功能
jQuery可以方便地处理DOM操作和动画效果,实现这样的二级菜单动态展开和收缩。以下是一个简单的示例:
首先,假设你的HTML结构大致如下:
```html
<ul class="main-menu">
<li><a href="#">菜单1</a>
<ul class="sub-menu">
<li>菜单1-1</li>
<li>菜单1-2</li>
</ul>
</li>
<!-- 其他一级菜单项 -->
</ul>
```
然后,你可以使用JavaScript/jQuery来添加事件监听并控制子菜单的显示和隐藏:
```javascript
$(document).ready(function() {
// 点击一级菜单
$('.main-menu > li').click(function(e) {
e.preventDefault(); // 阻止默认链接行为
// 获取当前点击的li元素,以及其对应的子菜单
var $this = $(this),
$subMenu = $this.children('.sub-menu');
// 展开或收起所有子菜单
$('.main-menu .sub-menu').slideUp('fast'); // 隐藏其他子菜单
// 只有当前点击的子菜单显示
if ($subMenu.is(':visible')) {
$subMenu.slideUp('fast');
} else {
$subMenu.slideDown('fast');
}
});
});
```
这个例子中,`slideUp()` 和 `slideDown()` 方法用于快速切换菜单的可见状态。当用户点击一级菜单时,除了当前点击的子菜单外,其他所有子菜单都会先滑动关闭,然后点击的那个子菜单会滑动打开。
阅读全文