1

他のサブメニューがクリックされた場合は、サブメニューを閉じて新しいサブメニューを開く必要があります。つまり、一度に複数のサブメニューを開きたくないということです。ただし、すべてのサブメニューを閉じることができるはずです。

これが私のjqueryスクリプトです:

<script> 
  $('.show_hide').hide();
  $("li:has(ul)").click(function(){
  $("ul",this).toggle('slow');
  });
</script>

そしてhtml:

 <ul id="left-menu" class="menu-v">
   <li> 
     <a>Menu</a>
     <ul class="menu-v show_hide">
       <li>
         <a >submenu </a>
       </li>
       <li>
         <a >submenu 2</a>
       </li>
    </ul>
  </li>
</ul>
4

3 に答える 3

4

多分このようにしたい(例を挙げました)-> http://jsfiddle.net/7qyE9/3/

html:

 <ul>
     <li class="main-menu">
         <span>Test</span>
         <ul class="submenu">
             <li>Item1</li>
             <li>Item2</li>
         </ul>
     </li>

     <li class="main-menu">
         <span>Abcde</span>
         <ul class="submenu">
             <li>Item3</li>
             <li>Item4</li>
         </ul>
     </li>
</ul>

とジャバスクリプト

$(document).ready(function(){
    $(".main-menu .submenu").hide();

    $(".main-menu span").click(function(){
        $(".main-menu .submenu").hide('fast');
        $(this).parent().find("ul").toggle('fast');
    });
});
于 2012-08-10T12:59:20.250 に答える
2

あなたが何を探しているのか正確にはわかりません。もう少し詳しく説明していただければ、私の答えを改善できるかもしれません。

これがjsfiddleの例です

HTML

<ul id="left-menu" class="menu-v">
     <li>
        <ul class="show_hide">
           <li>
             <a >submenu </a>
          </li>
          <li>
             <a >submenu 2</a>
          </li>
        </ul>
    </li>
    <li>
       <ul class="show_hide">
          <li>
             <a >submenu 4</a>
          </li>
          <li>
             <a >submenu 5</a>
          </li>
       </ul>
    </li>
 </ul>​

JQUERY

$(document).ready(function() {
    $('.show_hide').hide();
    $("li:has(ul)").click(function() {
        $("ul", this).toggle('slow');
    });
});​
于 2012-08-10T13:00:52.370 に答える
1

HTML

<ul>
    <li><a>0 Level menu<a></li>
    <li><a>0 Level menu<a></li>
    <li><a>0 Level menu<a></li>
    <li class="parentMenu">
        <ul>
            <li class="alwaysShow"><a>0 Level menu<a><li>
            <li class="hidden"><a>1 Level menu<a><li>
            <li class="hidden"><a>1 Level menu<a><li>
            <li class="hidden"><a>1 Level menu<a><li>
        </ul>
    </li>
</ul>

Jクエリ

$(".parentMenu").hover(
        function () {
            $(this).find(".hidden").show("100");
        },
        function () {
            $(this).find(".hidden").hide("100");
        }
);
于 2013-02-27T13:22:14.923 に答える