Javascript-форум (https://javascript.ru/forum/)
-   Работа (https://javascript.ru/forum/job/)
-   -   Меню - открывался только один пункт раскрывающего списка, другой скрывается. (https://javascript.ru/forum/job/85693-menyu-otkryvalsya-tolko-odin-punkt-raskryvayushhego-spiska-drugojj-skryvaetsya.html)

ajaxst 06.01.2024 14:49

Меню - открывался только один пункт раскрывающего списка, другой скрывается.
 
Добрый день, стоит задача что бы при нажатии на список открывался, списком (это реализовано), но при нажатии на еще один список подпунктов меню, первый скрывался и т.д.
jQuery(document).ready(function($) {
  
  $('.social-icons li').each(function(){
    var url = $(this).find('a').attr('href');
    if(url == ''){
     $(this).hide();
    }
  });

  $('.nav-toggle').click(function() {
    $(this).toggleClass('dropdownactive');
    $('#main-menu div ul:first-child').slideToggle(250);
    return false;
  });
  
  if( ($(window).width() > 640) || ($(document).width() > 640) ) {

      $('#main-menu li').mouseenter(function() {
        $(this).children('ul').css('display', 'none').stop(true, true).slideToggle(250).css('display', 'block').children('ul').css('display', 'none');
      });
      $('#main-menu li').mouseleave(function() {
        $(this).children('ul').stop(true, true).fadeOut(250).css('display', 'block');
      })
        } else {
    $('#main-menu li').each(function() {
      if($(this).children('ul').length)
        $(this).append('<span class="drop-down-toggle"><span class="drop-down-arrow"></span></span>');
    });

    $('.drop-down-toggle').click(function() {
      $(this).parent().children('ul').slideToggle(250);
    });
  }
 
});


Сам сайт меню.
<div class="menu-wrap">
<nav id="main-menu" class="mobile-menu">
	<input type="checkbox" id="checkbox" class="mobile-menu__checkbox">
	<label for="checkbox" class="mobile-menu__btn">
	<div class="mobile-menu__icon">
	</div>
	</label>
	<div class="mobile-menu-container">
		<ul class="menu">
			<li class="expanded menu-item-447"><a href="/hudozhestvennaya-gimnastika" title="Художественная гимнастика">Художественная гимнастика</a>
			<ul class="menu" style="overflow: hidden; display: block;">
				<li class="first leaf menu-item-481"><a href="/trenera-hudozhestvennaya-gimnastika" title="Тренеры-преподаватели">Тренеры-преподаватели</a></li>
				<li class="leaf menu-item-475"><a href="/raspisanie-0" title="Расписание">Расписание</a></li>
				<li class="leaf menu-item-471"><a href="/programmy-podgotovki-po-vidu-sporta-0" title="Программы подготовки по виду спорта">Программы подготовки по виду спорта</a></li>
				<li class="collapsed menu-item-446"><a href="/dlya-postupayushchih" title="Для поступающих">Для поступающих</a></li>
				<li class="last collapsed menu-item-445"><a href="/platnye-ozdorovitelnye-uslugi" title="Платные оздоровительные услуги">Платные оздоровительные услуги</a></li>
			</ul>
			<span class="drop-down-toggle"><span class="drop-down-arrow"></span></span></li>
			
				<li class="expanded menu-item-448"><a href="/sportivnaya-akrobatika" title="Спортивная акробатика">Спортивная акробатика</a><ul class="menu">
				<li class="first leaf menu-item-482"><a href="/trenera-sportivnaya-akrobatika" title="Тренеры-преподаватели">Тренеры-преподаватели</a></li>
				<li class="leaf menu-item-473"><a href="/raspisanie" title="Расписание">Расписание</a></li>
				<li class="leaf menu-item-469"><a href="/programmy-podgotovki-po-vidu-sporta" title="Программы подготовки по виду спорта">Программы подготовки по виду спорта</a></li>
				<li class="leaf menu-item-477"><a href="/dlya-postupayushchih-0" title="Для поступающих">Для поступающих</a></li>
				<li class="last leaf menu-item-476"><a href="/platnye-ozdorovitelnye-uslugi-0" title="Платные оздоровительные услуги">Платные оздоровительные услуги</a></li>
			</ul>
			<span class="drop-down-toggle"><span class="drop-down-arrow"></span></span></li>
			
				<li class="expanded menu-item-449"><a href="/pryzhki-na-batute" title="Прыжки на батуте">Прыжки на батуте</a><ul class="menu">
				<li class="first leaf menu-item-483"><a href="/trenera-pryzhki-na-batute" title="Тренеры-преподаватели">Тренеры-преподаватели</a></li>
				<li class="leaf menu-item-478"><a href="/raspisanie-1" title="Расписание">Расписание</a></li>
				<li class="leaf menu-item-479"><a href="/programmy-podgotovki-po-vidu-sporta-1" title="Программы подготовки по виду спорта">Программы подготовки по виду спорта</a></li>
				<li class="leaf menu-item-516"><a href="/dlya-postupayushchih-1" title="Для поступающих">Для поступающих</a></li>
				<li class="last leaf menu-item-517"><a href="/platnye-ozdorovitelnye-uslugi-1" title="Платные оздоровительные услуги">Платные оздоровительные услуги</a></li>
			</ul><span class="drop-down-toggle"><span class="drop-down-arrow"></span></span></li>

			<li class="leaf menu-item-526"><a href="/novosti" title="Новости">Новости</a></li>
			<li class="last leaf menu-item-453"><a href="/kontakty" title="Контакты">Контакты</a></li>
		</ul>
	</div>
</nav>
</div>

Что подправить в JS скрипте?

Nexus 06.01.2024 21:38

И что у вас не получается?
Цитата:

Сообщение от ajaxst
стоит задача

Или вы работу предлагаете?

ajaxst 16.01.2024 17:08

Да предлагаю его немного доработать

ksa 16.01.2024 17:12

Цитата:

Сообщение от Nexus
Или вы работу предлагаете?

Цитата:

Сообщение от ajaxst
Да предлагаю его немного доработать

Тогда называй бюджет на эту "доработку". Глядишь и желающие найдутся. ;)


Часовой пояс GMT +3, время: 20:58.