我有一个简单的jQuery手风琴,可以很好地工作...... 几乎:)
正如您在演示中所看到的,我目前的导航是“打开”,因为我在“团队”页面中。
当我点击“关于我们”时,它是否可以完全关闭元素。正如您从演示中看到的那样,它关闭了它,但然后快速重新打开它。我想这是因为我的CSS的第27行上的代码。
以下是演示:http://jsfiddle.net/URYzK/5/
这是我的JavaScript:
jQuery(function($) {
$('#accordion > li > a').click(function (e) {
if ($(this).next('ul').length == 0) {
// link is for navigation, do not set up accordion here
return;
}
// link is for accordion pane
//remove all the "Over" class, so that the arrow reset to default
$('#accordion > li > a').not(this).each(function () {
if ($(this).attr('rel')!='') {
$(this).removeClass($(this).attr('rel') + 'Over');
}
$(this).siblings('ul').slideUp("slow");
});
//showhide the selected submenu
$(this).siblings('ul').slideToggle("slow");
//addremove Over class, so that the arrow pointing downup
$(this).toggleClass($(this).attr('rel') + 'Over');
e.preventDefault();
});
});
非常感谢您的帮助。
答案 0 :(得分:0)
从display:none
移除#accordian ul
并完全删除.children
CSS。我相信这会创造出你想要的行为。您将孩子ul
设置为display:none
,然后尝试强制.children
ul
,display:block
以后{{1}},这就是为什么他们在战斗。
也更新了你的jsFiddle。