1

我有这个菜单用于使用引导程序 4 显示子下拉菜单:

<span class="menu-toggle">click</span>
<nav class="responsive-menu top-menu menu_wrap d-block d-lg-none d-xl-none open">
  <div class="menu_scroll_content">
    <ul class="menu_wrap">
      <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home current-menu-item page_item page-item-140 current_page_item menu-item-143 active"><a href="">home</a></li>
      <li class="menu-item-has-children mega_menu menu-item menu-item-type-custom menu-item-object-custom menu-item-60 mega_menu mega_menu_advanced dropdown">
        <a title="menu" href="#" data-toggle="dropdown" class="dropdown-toggle" aria-haspopup="true"> menu <span class="caret"></span></a>
        <ul role="menu" class=" dropdown-menu">
          <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-65 dropdown-submenu">
            <a title="child menu" href="#">child menu</a>
            <ul role="menu" class=" dropdown-menu">
              <li class="menu-item menu-item-type-post_type menu-item-object-card menu-item-70">
                <a title="child menu 1" href="">child menu 1</a></li>
              <li class="menu-item menu-item-type-post_type menu-item-object-card menu-item-83">
                <a title="child menu 2" href="">child menu 2</a></li>
            </ul>
          </li>
        </ul>
      </li>
    </ul>
  </div>
</nav>

JS:

//menu
$(document).on("click", ".menu-toggle", function(e) {
    e.preventDefault();
    $("body").addClass("open-nav");
    $(".top-menu").toggleClass("open");
    $(".overlay").toggleClass("show");
});
$(document).on("click", ".overlay,.close_nav", function() {
    $(".overlay").removeClass("show");
    $(".top-menu").removeClass("open");
    $("body").removeClass("open-nav");
});
$(document).on("click", ".responsive-menu .menu-item-has-children>a", function(e) {
    e.preventDefault();
    e.stopPropagation();
    console.log("menu click");
    //$('.menu_wrap>li').removeClass('menu-show');
    $(this).parent().toggleClass("menu-show");
});

现在在单击menu显示child menu和单击child menu显示子子菜单时起作用,但是当我需要关闭menu并单击menu不最近的菜单时。如何解决这个问题!?

在这里演示(在平板电脑或移动设备上预览)

4

1 回答 1

0

只需在 jquery 脚本之后和 bootstrap js 脚本插件之前添加此脚本

链接是:

这添加你的脚本 src=" https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js "

示例图像

于 2020-08-25T09:54:26.213 回答