<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>jquery3-菜单效果</title>
<link type="text/css" rel="stylesheet" href="css/menu.css">
<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="js/menu.js"></script>
</head>
<body>
<ul>
<li class="main">
<a href="#">菜单项1</a>
<ul>
<li><a href="#">子菜单项11</a></li>
<li><a href="#">子菜单项12</a></li>
</ul>
</li>
<li class="main">
<a href="#">菜单项2</a>
<ul>
<li><a href="#">子菜单项21</a></li>
<li><a href="#">子菜单项22</a></li>
</ul>
</li>
<li class="main">
<a href="#">菜单项3</a>
<ul>
<li><a href="#">子菜单项31</a></li>
<li><a href="#">子菜单项32</a></li>
</ul>
</li>
</ul>
<br />
<br />
<ul>
<li class="hmain">
<a href="#">菜单项1</a>
<ul>
<li><a href="#">子菜单项11</a></li>
<li><a href="#">子菜单项12</a></li>
</ul>
</li>
<li class="hmain">
<a href="#">菜单项2</a>
<ul>
<li><a href="#">子菜单项21</a></li>
<li><a href="#">子菜单项22</a></li>
</ul>
</li>
<li class="hmain">
<a href="#">菜单项3</a>
<ul>
<li><a href="#">子菜单项31</a></li>
<li><a href="#">子菜单项32</a></li>
</ul>
</li>
</ul>
</body>
</html>
js代码
$(function() {
$(".main > a").click(function() {
//找到主菜单项对应的子菜单项
//next:寻找当前节点指定名称的兄弟节点。
var ulNode = $(this).next("ul");
/* if (ulNode.css("display") == "none") {
ulNode.css("display", "block");
} else {
ulNode.css("display", "none");
}*/
//ulNode.show();
//ulNode.hide();
//自动判断,如果是合并的就打开,如果是打开的就合并
//ulNode.toggle();
//卷帘效果
//ulNode.slideDown();
//ulNode.slideUp();
//卷帘效果的自动判断
ulNode.slideToggle();
changeIcon($(this));
});
$(".hmain").hover(function() {
$(this).children("ul").slideDown();
changeIcon($(this).children("a"));
}, function() {
$(this).children("ul").slideUp();
changeIcon($(this).children("a"));
});
});
//指示图标的展打开和关闭
function changeIcon(mainNode) {
if (mainNode) {
if (mainNode.css("background-image").indexOf("closed.gif") >= 0) {
mainNode.css("background-image", "url(image/open.gif)");
} else {
mainNode.css("background-image", "url(image/closed.gif)");
}
}
}
ul, li {
/*清楚ul li上默认的小圆点*/
list-style: none;
}
ul {
/*清除缩进*/
padding: 0;
margin: 0;
}
.main,.hmain{
background-image: url("../image/title.jpg");
background-repeat: repeat-x;
width: 120px;
}
li {
background-color: #EEEEEE;
}
a {
/*取消所有的下划线*/
text-decoration: none;
padding-left: 20px;
/*充满所在区域*/
display: block;
display: inline-block;
width: 100px;
padding-top: 3px;
padding-bottom: 3px;
}
.main a,.hmain a{
color: white;
background-image: url("../image/closed.gif");
background-repeat: no-repeat;
background-position: 5px center;
}
.main li a, .hmain li a{
color: black;
background-image: none;
}
/*将所有子菜单隐藏*/
.main ul,.hmain ul{
display:none;
}
.hmain{
float:left;
margin-left:1px;
}