我遇到了一个列表菜单的两个问题,我现在已经使用了一段时间了。
这是JSFiddle - http://jsfiddle.net/yAqQG/1/
感谢任何帮助,谢谢。
HTML
<div class="navigation">
<ul>
<li><h1><a href="#">One</a></h1>
<ul>
<li><a href="#">Not Available</a></li>
<li><a href="#">Not Available</a></li>
</ul>
</li>
<li><h1><a href="#">Two</a></h1>
<ul>
<li><a href="#">Not Available</a></li>
<li><a href="#">Not Available</a></li>
</ul>
</li>
</ul>
</div>
JQuery的
jQuery(document).ready(function () {
var subMenu = jQuery(".navigation ul li ul li");
var linkClick = jQuery(".navigation ul li").filter(":has(ul)");
subMenu.hide();
linkClick.click(function (e) {
e.preventDefault();
$(this).find('ul li').slideToggle("fast");
});
});
CSS
body {
background : #000000;
}
/* Title Settings */
.navigation ul li h1 {
background : none;
float : right;
font-size : 28px;
font-weight : 100;
margin : 0;
margin-bottom : 3px;
padding : 0;
}
/* Before and After Styling */
.navigation a {
color : #ffffff;
border-right : 3px solid #ffffff;
display : table;
padding : 6px;
transition: .25s ease-in-out;
-moz-transition: .25s ease-in-out;
-webkit-transition: .25s ease-in-out;
text-decoration : none;
}
.navigation a:hover {
border-right : 3px solid #f43058;
color : #f43058;
}
/* Fixed (Top Right) Positioning */
.navigation {
font-family : 'Open Sans Condensed', sans-serif;
font-weight : 100;
margin : 12px;
position : fixed;
right : 0;
top : 0;
}
.navigation ul {
font-size : 20px;
margin : 0;
padding : 0;
text-align : right;
}
.navigation ul li {
clear : right;
float : right;
list-style-type : none;
}
/* Second Level Settings */
.navigation ul li:hover ul {
display : block;
}
.navigation ul li ul li {
font-size : 18px;
margin-bottom : 3px;
}
答案 0 :(得分:3)
您的链接不起作用,因为您已将preventDefault应用于所有这些链接:
linkClick.click(function (e) {
e.preventDefault();
});
我已经删除了h1标记周围的a
标记。为了让手风琴工作,你可以这样做:
jQuery(document).ready(function () {
jQuery('h1').click(function () {
$(this).closest('li').siblings().find('ul').slideUp();
$(this).siblings('ul').slideToggle("fast");
});
});