ここに投稿するのは初めてですが、調査するときはいつもここに最初に来ます。とにかく、私はどこでも検索しましたが、私の問題に対する確実な解決策を見つけることができません。ここに問題があります。jQuery 1.9.1 と slideToggle 関数を使用して垂直スライド メニューを作成しました。私はjsFiddle http://jsfiddle.net/JWaXM/1/に例を入れました
<li class="topnav"><a href="#">ITEMS LIST 1</a>
<ul>
<li class="subnav">ITEM 1
<ul>
<li>List subitem 1</li>
<li>List subitem 2</li>
</ul>
</li>
<li class="subnav">ITEM 2
<ul>
<li>List subitem 1</li>
<li>List subitem 2</li>
</ul>
</li>
</ul>
</li>
<li class="topnav"><a href="#">ITEMS LIST 2</a>
<ul>
<li class="subnav">ITEM 1
<ul>
<li>List subitem 1</li>
<li>List subitem 2</li>
</ul>
</li>
<li class="subnav">ITEM 2
<ul>
<li>List subitem 1</li>
<li>List subitem 2</li>
</ul>
</li>
</ul>
</li>
<script type="text/javascript">
$(document).ready(function(){
$(".topnav, .subnav").click(function(event){
event.stopPropagation();
$(this).children("ul").slideToggle();
});
});
</script>
メニューはうまく機能しますが、別の子メニューを開いたときに前の子メニューを閉じる方法を理解する必要があります。また、親と子を区別して、トップナビまたはサブナビを閉じる方法が必要です。私はjQuery全体に不慣れですが、ゆっくりと学んでいます。助けてくれてありがとう。