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

前端技术 2023/09/09 JavaScript

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

代码实例如下:

代码实例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset=\"gb2312\">
<meta name=\"author\" content=\"http://www.phpstudy.net/\" />
<title>phpstudy</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=\"http://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=\"#\">phpstudy一</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=\"#\">phpstudy二</a></dt>
 <dd>
  <ul>
   <li><a href=\"#\">正则教程</a></li>
   <li><a href=\"#\">phpstudy</a></li>
  </ul>
 </dd>
 <dt><a href=\"#\">phpstudy三</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.stayed.cn/item/24683

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。