javascript - jQuery Mega Menu 打开和关闭问题

标签 javascript jquery html css

我正在构建一个带有自定义大型菜单的网站,并且该菜单可以正常工作。

当您点击一个带有下拉菜单的链接时,它会打开,如果您点击另一个带有下拉菜单的链接,它会关闭打开的链接并打开新的链接。

但是我几乎要尖叫了,因为我希望能够通过单击打开的下拉列表的链接来关闭打开的下拉列表..

到目前为止,这是我的 jQuery:

jQuery(document).ready(function($){
  $('#menu-main-menu .menu-item-has-children a').click(function(){
    $('#menu-main-menu > .menu-open').removeClass('menu-open');
    $('.menu-drop').removeClass('menu-drop');
    $(this).parent('li').addClass('menu-open');
    $(this).parent('li').children('.sub-menu').addClass('menu-drop');
  });
});

如有任何帮助,我们将不胜感激。

非常感谢。

这是 fiddle https://jsfiddle.net/CharlieH/zbtboytc/

最佳答案

我为你做了一个 JsFiddle :

https://jsfiddle.net/zbtboytc/1/

jQuery(document).ready(function($){

  $('#menu-main-menu .menu-item-has-children').click(function() {
      if ($(this).hasClass('menu-open')) {
          $(this).removeClass('menu-open');
          $(this).find('.menu-drop').removeClass('menu-drop');
      } else {
        $('.menu-open').removeClass('menu-open');
        $('.menu-drop').removeClass('menu-drop');
        $(this).addClass('menu-open');
        $(this).children('.sub-menu').addClass('menu-drop');
      }
    });

});

关于javascript - jQuery Mega Menu 打开和关闭问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36014108/

相关文章:

javascript - 嵌套排序动态项目不折叠

从外部加载时 jQuery fadeIn IE Png 问题

javascript - 我如何通过 jquery 更改背景颜色?

javascript - 使用 react-leaflet 时缺少 Leaflet Map Tiles

javascript - jQuery 脚本适用于除 Chrome 之外的所有浏览器

javascript - 类型错误 : Cannot read property 'nativeElement' of undefined Angular 8

javascript - 输出新数组

javascript - 如果向下滚动,弹出位置会改变

android - 仅使用 CSS 在移动设备上水平和垂直居中显示 div

asp.net - 为什么复选框也有一个隐藏的标签?