Javascript jQuery侧栏-单击按钮时显示子菜单div并隐藏具有相同类的所有其他子菜单

Javascript jQuery侧栏-单击按钮时显示子菜单div并隐藏具有相同类的所有其他子菜单,javascript,jquery,html,sidebar,Javascript,Jquery,Html,Sidebar,JSFIDLE: 我怎样才能做到,当点击按钮打开一个子菜单时,它会出现,但所有其他的都会隐藏 我已经尝试将hide()添加到所有.submenu项中,但显然这会导致冲突,从而阻止所有项被打开 HTML: 您只需删除所有同级元素的openclass属性: $('#'+$(this).attr('show-id')).siblings().removeClass('open'); 但最好使用父菜单容器中的子菜单进行导航。如果你不知道怎么做,请发表评论,我会帮助你。此外,对于容器控制,您可以在hr

JSFIDLE:

我怎样才能做到,当点击按钮打开一个子菜单时,它会出现,但所有其他的都会隐藏

我已经尝试将hide()添加到所有.submenu项中,但显然这会导致冲突,从而阻止所有项被打开

HTML:


您只需删除所有同级元素的
open
class属性:

$('#'+$(this).attr('show-id')).siblings().removeClass('open');


但最好使用父菜单容器中的子菜单进行导航。如果你不知道怎么做,请发表评论,我会帮助你。此外,对于容器控制,您可以在href中设置id-这对SEO更好

以前尝试过这个,但显然做得不对。谢谢
$(document).ready(function() {

$('.navButton').click(function() {

    $('#'+$(this).attr('show-id')).toggleClass('open');

});

})
$('#'+$(this).attr('show-id')).siblings().removeClass('open');
$(document).ready(function() {

    $('.navButton').click(function() {

        $('.submenu').removeClass('open');
        $('#' + $(this).attr('show-id')).addClass('open');

    });

});