首頁  >  問答  >  主體

重寫後的標題為:如何在jQuery中實現子選單的自動關閉

我正在嘗試為行動視圖建立一個jQuery下拉式選單。我對jQuery還不熟悉,我使用Toggle來隱藏和顯示子選單。我的問題是,當我點擊一個選單項目時,其他子選單不會自動關閉。例如,如果我點擊menutwo,我希望menuone會自動關閉。我該如何做到這一點?請幫忙。

jQuery(document).ready(function($) {
  $(".menuone").click(function() {
    $(".submenuone").toggle(200);
  });
  $(".menutwo").click(function() {
    $(".submenutwo").toggle(200);
  });
  $(".menuthree").click(function() {
    $(".submenuthree").toggle(200);
  });

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id="menu-menu" class="menu dropdown-menu">
  <li class="menuone"><a href="#">关于我们</a>
    <ul class="submenuone">
      <li>公司概况</a>
      </li>
    </ul>
  </li>
  <li class="menutwo"><a href="#">解决方案</a>
    <ul class="submenutwo">
      <li>应收账款融资和催收</li>
      <li>工人补偿融资></li>
    </ul>
  </li>
  <li class="menuthree"><a href="#">提供者类型</a>
    <ul class="submenuthree">
      <li>医生</a>
      </li>
      <li>药房</a>
      </li>
    </ul>
  </li>
</ul>

P粉312631645P粉312631645399 天前1044

全部回覆(2)我來回復

  • P粉207483087

    P粉2074830872023-09-17 00:28:15

    Made it finally.

    Here is my answer

    jQuery(document).ready(function($) {
      $(".menuone").click(function() {
      $(".submenuone").toggle(200);
      $(".submenutwo, .submenuthree").hide(200); // Hide other submenus
      });
    
    $(".menutwo").click(function() {
    $(".submenutwo").toggle(200);
    $(".submenuone, .submenuthree").hide(200); // Hide other submenus
    });
    
    $(".menuthree").click(function() {
    $(".submenuthree").toggle(200);
    $(".submenuone, .submenutwo").hide(200); // Hide other submenus
    });
    });

    回覆
    0
  • P粉146080556

    P粉1460805562023-09-17 00:17:27

    我會使用事件委託,並找到其他的UL並關閉它們。

    jQuery(document).ready(function($) {
      $("#menu-menu").on("click", "> li", function () {
         $("#menu-menu > li").not(this).find("ul").hide(200);
         $(this).find("ul").toggle(200);
      });
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <ul id="menu-menu" class="menu dropdown-menu">
      <li class="menuone"><a href="#">关于我们</a>
        <ul class="submenuone">
          <li>公司概况</a>
          </li>
        </ul>
      </li>
      <li class="menutwo"><a href="#">解决方案</a>
        <ul class="submenutwo">
          <li>应收账款融资和催收</li>
          <li>工人赔偿融资></li>
        </ul>
      </li>
      <li class="menuthree"><a href="#">供应商类型</a>
        <ul class="submenuthree">
          <li>医生</a>
          </li>
          <li>药房</a>
          </li>
        </ul>
      </li>
    </ul>

    回覆
    0
  • 取消回覆