当我点击任何菜单项时,该项目的子菜单会显示。哪个好。然后当我点击任何其他菜单项时,第一个框/子菜单消失并出现一个新的子菜单,这也很棒。问题是剩余/最后一个子菜单不会消失。我希望能够点击任何菜单项并隐藏剩余/最后一个子菜单。
我的网址:http://arabic001.com
$(document).ready(function() {
$('.menu').click(function() {
$('.subNav').hide();
$(this).next().toggle('slow');
});
})
答案 0 :(得分:1)
我昨天刚刚做了这个......
当我切换打开的东西时,我向元素添加一个新类,然后当切换一个新项时,您可以使用您添加的类作为选择器来关闭打开的项。
$("#btn_toggle_transcript").on("click",
function(){
closeOpen("#transcript_container");
$("#transcript_container").slideToggle(1000);
$("#transcript_container").addClass('ToggleOpen');
}
);
function closeOpen(ignore){
if(ignore!=''){
$(".ToggleOpen:not('"+ignore+"')").slideUp(500);
$(".ToggleOpen:not('"+ignore+"')").removeClass('ToggleOpen');
}else{
$(".ToggleOpen").slideUp(500);
$(".ToggleOpen").removeClass('ToggleOpen');
} }
更新:我删除了那里的“忽略”位。这是多余的。这对我很有用。我还更改了绑定方法以使用$(selector).on(“event”,callback)格式。
更新:哎呀!我需要在那里忽略。否则,收盘行动将再次反弹。 :(