基于jQuery实现以手风琴方式展开和折叠导航菜单

本章节分享一段代码实例,它实现了手风琴方式展开和折叠导航菜单效果。

代码实例如下:

代码实例如下: <!DOCTYPE html> <html> <head> <meta charset="gb2312"> <meta content="https://www.jb51.net/" /> <title>脚本之家</title> <style> dl{width:150px;} dl,dd{margin:0;} dt{ background:gray; font-size:14px; padding:2px; margin:2px; } dt{color:#FFF;} dd a{ color:#000; font-size:12px; } ul{ list-style:none; padding:2px; } </style> <script src="https://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> $(document).ready(function(){ $("dd:not(:first)").hide(); $("dt a").click(function(){ $("dd:visible").slideUp("slow"); $(this).parent().next().slideDown("slow"); return false; }); }); </script> </head> <body> <dl> <dt><a href="#">脚本之家一</a></dt> <dd> <ul> <li><a href="#">div教程</a></li> <li><a href="#">css教程</a></li> <li><a href="#">jquery教程</a></li> </ul> </dd> <dt><a href="#">脚本之家二</a></dt> <dd> <ul> <li><a href="#">正则教程</a></li> <li><a href="#">脚本之家</a></li> </ul> </dd> <dt><a href="#">脚本之家三</a></dt> <dd> <ul> <li><a href="#">ajax教程</a></li> <li><a href="#">softwhy.com</a></li> <li><a href="#">js教程</a></li> </ul> </dd> </dl> </body> </html>

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1).$(document).ready(function(){}),当文档结构完全加载完毕再去执行函数中的代码。
(2).$("dd:not(:first)").hide(),除第一个dd元素之外的所有dd元素隐藏,就是第一个导航菜单的子菜单是展开的,其他隐藏。
(3).$("dt a").click(function(){}),为dt元素下的a元素注册click事件处理函数。
(4).$("dd:visible").slideUp("slow"),所有已经显示的dd元素通过动画方式收缩隐藏。
(5).$(this).parent().next().slideDown("slow"),当前连接a元素的父元素也就是dt元素,dt元素的下一个元素就是二级菜单dd元素,将此菜单以动画方式展开。
(6).return false,这个很重要,防止链接的跳转动作。

以上所述是小编给大家分享基于jQuery实现以手风琴方式展开和折叠导航菜单,希望对大家有所帮助。

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgwzyf.html