这篇文章主要为大家详细介绍了基于jquery实现三级下拉菜单的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了jquery三级下拉菜单的具体实现代码,供大家参考,具体内容如下
在写这个的时候,首先要捋顺思路。点一个菜单的时候,其他的要闭合,点一级菜单的时候,二三级菜单要闭合,等等。
大致代码如下:
代码如下:
<body>
<aside>
<ul class="one">
<li> <a href="#" class="a">目录A</a>
<ul class="two" style="display: none">
<li><a href="#" class="a">二级目录A</a>
<ul class="three" style="display: none">
<li><a href="#">三级目录A</a></li>
</ul>
</li>
<li><a href="#" class="a">二级目录B</a></li>
<li><a href="#" class="a">二级目录C</a></li>
</ul>
</li>
<li> <a href="#" class="a">目录B</a>
<ul class="two" style="display: none">
<li><a href="#" class="a">二级目录A</a>
<ul class="three" style="display: none">
<li><a href="#">三级目录A</a></li>
</ul>
</li>
<li><a href="#" class="a">二级目录B</a></li>
<li><a href="#" class="a">二级目录C</a></li>
</ul>
</li>
<li> <a href="#" class="a">目录C</a> </li>
</ul>
</aside>
//jQuery部分
<script src="js/jquery-1.8.3.min.js"></script>
<script>
$(document).ready(function() {
$('.a').click(function() {
if ($(this).siblings('ul').css('display') == 'none') {
$(this).siblings('ul').slideDown(100).children('li');
if ($(this).parents('li').siblings('li').children('ul').css('display') == 'block') {
$(this).parents('li').siblings('li').children('ul').slideUp(100);
}
} else {
//控制自身菜单下子菜单隐藏
$(this).siblings('ul').slideUp(100);
//控制自身菜单下子菜单隐藏
$(this).siblings('ul').children('li').children('ul').slideUp(100);
}
});
});
</script>
</body>
如果要添加样式的话,一定要注意,否则菜单可能会出现错误。
完整代码地址:https://github.com/SabrinaTian/ThreeMenuNav.git
git里还有一个带有图标的案例,不点击的话是+号,菜单打开后,变为-号。
以上就是本文的全部内容,希望对大家的学习有所帮助。