Javascript 单击其他子菜单时如何关闭子菜单
我试图做一个功能,当我点击一个子菜单时,它会打开,但当我点击另一个子菜单时,我想关闭之前打开的那个 这是我现在的代码,它所做的是当我点击它打开和关闭的子菜单Javascript 单击其他子菜单时如何关闭子菜单,javascript,jquery,html,Javascript,Jquery,Html,我试图做一个功能,当我点击一个子菜单时,它会打开,但当我点击另一个子菜单时,我想关闭之前打开的那个 这是我现在的代码,它所做的是当我点击它打开和关闭的子菜单 // Dropdown menu $(".sidebar-dropdown > a").click(function () { $(".sidebar-submenu").slideUp(200); if ($(this).parent().hasClass("active")) { $(".side
// Dropdown menu
$(".sidebar-dropdown > a").click(function () {
$(".sidebar-submenu").slideUp(200);
if ($(this).parent().hasClass("active")) {
$(".sidebar-dropdown").removeClass("active");
$(this).parent().removeClass("active");
} else {
$(".sidebar-dropdown").removeClass("active");
$(this).next(".sidebar-submenu").slideDown(200);
$(this).parent().addClass("active");
}
});
我想做的基本上是:
我不能用我现在正在使用的代码复制这个例子…重要的是:我们宁愿帮助找到解决方案,也不愿为他们提供服务。我记得我自己问了第一个问题。这就是为什么这次我会帮助你。用你的代码创建一个代码片段,这样我们可以帮助你在将来得到你想要的。如果你无法发现自己做错了什么,请给出一个更好的工作例子
这是您发布的两个代码的组合。应该按预期工作。请注意,如果希望在开始时打开活动类,则需要有活动类
$.sidebar下拉菜单>a.clickfunction{
$.sidebar-submenu.slideUp200;
$.sidebar-dropdown.removeClassactive;
如果$this.parent.hasClassactive处于活动状态{
$this.parent.removeClassactive;
}否则{
$this.next.sidebar-submenu.slideDown200;
$this.parent.addClassactive;
}
};
第一个子菜单
项目1
项目2
第二个子菜单
项目3
项目4
为什么你不能在你的代码中复制这个例子呢?你能分享你的html代码吗?这已经讨论过很多次了。与所有逻辑相反,只需关闭所有内容并打开当前子菜单。显示HTML以获取更多帮助。您正在使用$.sidebar-dropdown.removeClassactive;在if和else块中。@AkhilAravind我在原始帖子中添加了我的html代码。