你的位置:首页 > Java教程

[Java教程]手风琴方式展开和折叠导航菜单效果


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

<!DOCTYPE html><html><head><meta charset="gb2312"><meta name="author" content="http://www.softwhy.com/" /><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="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="#">蚂蚁部落一</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,这个很重要,防止链接的跳转动作。
二.相关阅读:
(1).:not可以参阅jQuery的:not选择器一章节。
(2).:first可以参阅jQuery的:first选择器一章节。
(3).:visible可以参阅jQuery的:visible选择器一章节。
(4).slideUp()可以参阅jQuery的slideUp()方法一章节。
(5).parent()可以参阅jQuery的parent()方法一章节。
(6).next()可以参阅jQuery的next()方法一章节。
(7).return false可以参阅链接中return false的作用是什么一章节。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=18316

更多内容可以参阅:http://www.softwhy.com/jquery/