Я полный любитель для кодирования; Я хочу иметь трехуровневое складное меню, которое будет расширяться при нажатии. Я нашел некоторый существующий код для использования, но он предназначен только для двухуровневого меню. Я не могу решить, как изменить скрипт, чтобы третий уровень открывался при нажатии. Любые идеи были бы больше всего оценили!Javascript трехуровневое складное меню
Вот существующий сценарий:
<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>
Спасибо @ synthet1c - отлично работает! Хотя я бы предпочел избегать одновременного открытия более одного подменю (т. Е. Свернуть все остальные меню при щелчке). Я хорошо разбираюсь в подобных вопросах на этом сайте, но ни один из кодов не работает для меня. Есть ли у вас какие-либо советы? –