私は完全なアマチュアをコーディングしています。クリックすると拡大される3レベル折りたたみメニューが必要です。既存のコードをいくつか見つけましたが、2レベルのメニュー用にのみ設計されています。スクリプトを変更して、クリックしたときに3番目のレベルが開くようにする方法はありません。どんなアイデアでもが高く評価されます!ここでJavascriptの3レベル折りたたみメニュー
は、既存のスクリプトです:
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<!-- <script type="text/javascript" language="javascript" charset="utf-8" src="nav.js"></script> -->
<!--[if lt IE 9]>
<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script>
$(document).ready(function(){
$("#nav > li > a").on("click", function(e){
if($(this).parent().has("ul")) {
e.preventDefault();
}
if(!$(this).hasClass("open")) {
// hide any open menus and remove all other classes
$("#nav li ul").slideUp(350);
$("#nav li a").removeClass("open");
// open our new menu and add the open class
$(this).next("ul").slideDown(350);
$(this).addClass("open");
}
else if($(this).hasClass("open")) {
$(this).removeClass("open");
$(this).next("ul").slideUp(350);
}
});
});
</script>
感謝 - 素晴らしい作品!一度に複数のサブメニューを開くことを避けることが望ましいですが(つまり、クリックすると他のすべてのメニューが折りたたまれます)。私はこのサイトで同様の質問をよく見てきましたが、コードのどれも私のために働いていません。何かヒントはありますか? –