Задать вопрос
@demidov_grinch

Как сделать slideToggle для меню третьего уровня?

Добрый день, уважаемые господа! Есть код jQuery:
$('#menu-menu-vokb-1 > .menu-item-has-children').click(function() {
		$(this).children(".sub-menu").slideToggle();
		console.log("Кликнули по меню второго уровня");
	});
	
	$('#menu-menu-vokb-1 > .menu-item-has-children > .menu-item-has-children').click(function() {
		$(this).children("ul").slideToggle();
		console.log("Кликнули по меню третьего уровня");
	});

Также имеется трехуровневое меню. Каждый элемент, содержащий вложенное меню имеет класс .menu-item-has-children. При попытке кликнуть на меню третьего уровня меню второго уровня закрывается. В чем дело не пойму!
  • Вопрос задан
  • 96 просмотров
Подписаться 1 Оценить 1 комментарий
Решения вопроса 1
Потому что у вас одинаковые названия классов. Посмотрите внимательно на первую функцию. Когда вы кликните на меню третьего уровня, отработают оба события, потому что и там, и там, вы обращаетесь к ".menu-item-has-children", который содержится в "#menu-menu-vokb-1".
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы