Javascript 如何关闭所有其他子菜单?

Javascript 如何关闭所有其他子菜单?,javascript,jquery,html,Javascript,Jquery,Html,我有一个带有全屏下拉菜单的导航栏。单击后,我想打开一个下拉菜单,如果另一个下拉菜单已经打开,我想关闭另一个菜单 下面是我的一些代码: Javascript: $(".sub-link").click(function(){ $(this).children(".navigation-container, a, .navigation-overlay").toggleClass("active"); $(this).children(".navigation-container, .n

我有一个带有全屏下拉菜单的导航栏。单击后,我想打开一个下拉菜单,如果另一个下拉菜单已经打开,我想关闭另一个菜单

下面是我的一些代码:

Javascript:

$(".sub-link").click(function(){
   $(this).children(".navigation-container, a, .navigation-overlay").toggleClass("active");
   $(this).children(".navigation-container, .navigation-overlay").fadeToggle(250);
});
Html:


我已经试过一些关于兄弟姐妹的东西了,但是我没法用


谢谢

在切换类之前是否尝试删除所有.active

$(".sub-link").click(function(){
   $(this).children(".navigation-container.active, 
                      a.active, 
                     .navigation-overlay.active").removeClass("active");
   $(this).children(".navigation-container, a, .navigation-overlay").toggleClass("active");
   $(this).children(".navigation-container, .navigation-overlay").fadeToggle(250);
});

在切换类之前,是否尝试删除所有.active

$(".sub-link").click(function(){
   $(this).children(".navigation-container.active, 
                      a.active, 
                     .navigation-overlay.active").removeClass("active");
   $(this).children(".navigation-container, a, .navigation-overlay").toggleClass("active");
   $(this).children(".navigation-container, .navigation-overlay").fadeToggle(250);
});

您只需要切换.navigation container并使用css来设置.navigation container{display:none}但是.navigation container.active{display:inline}

$(".sub-link").click(function(){
       $(this).children(".navigation-container").toggleClass("active");

    });
请看这里的小提琴:

要进行淡入淡出,只需稍微更改JQuery:

$(".sub-link").click(function(){
$(".navigation-container").removeClass("active");
$(this).children(".navigation-container").fadeToggle("active");
});

您只需要切换.navigation container并使用css来设置.navigation container{display:none}但是.navigation container.active{display:inline}

$(".sub-link").click(function(){
       $(this).children(".navigation-container").toggleClass("active");

    });
请看这里的小提琴:

要进行淡入淡出,只需稍微更改JQuery:

$(".sub-link").click(function(){
$(".navigation-container").removeClass("active");
$(this).children(".navigation-container").fadeToggle("active");
});

您的html无效。你不能把一个
放在另一个
里面,我把那部分修好了,谢谢!您的html无效。你不能把一个
放在另一个
里面,我把那部分修好了,谢谢!嗯,不起作用,它只是把菜单放在其他打开的下拉菜单上。嗯,不起作用,它只是把菜单放在其他打开的下拉菜单上