@pashabomber

Как решить проблему с закрытием меню?

Всем привет!

На сайте есть меню, которое появляется при клике на иконку.

$('.header .icons .user-block').click(function() {
	$('.header .icons .user-block .sub').toggle();
});


Все отлично работает, при клике на иконку меню появляется, при повторном клике - исчезает.

Но появилась задача, чтобы открытое меню также закрывалось при клике в любом месте кроме самого этого меню.

Добавил код:

jQuery(function($){
	$(document).mouseup(function (e){
		var div = $(".header .icons .item .sub");
		if (!div.is(e.target)
		    && div.has(e.target).length === 0) {
			div.hide();
		}
	});
});


Теперь ситуация следующая. При клике на иконку меню открывается, а при повторном клике не закрывается. Закрывается меню теперь только при клике в любом другом месте.

Как мне сделать так, чтобы меню закрывалось и при клике в любом месте и при повторном клике на иконку, вызывающую появление меню?

Заранее спасибо!
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ответы на вопрос 1
romasovest
@romasovest
~
Может у тебя проблема во всплытии или не_всплытии события? Посмотреть бы макет в кодепене.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы