Задать вопрос
r45her
@r45her
HTML-верстальщик / Frontend разработчик

Как правильно сделать затемнение при наведении на меню?

Ребят, вот задачка по JS. Есть сайт: cy05828.tmweb.ru

Там есть "Каталог товаров". При наведении на него через 300 мс появляется меню. Доступа к этому коду нет.

Так же при наведении через 300 мс остальной сайт затемняется. Вот этот код нужно доработать так, чтобы поведение было таким же, как у появления меню. А именно, затемнение должно срабатывать только в том случае, если за 300 мс пользователь не убрал курсор с кнопки. Зайдите на сайт, всё сразу станет понятно.

Мне не нужен полный код решения, только идею как это сделать. На данный момент код выглядит так:

menu.on('mouseenter mouseleave', function() {
		fog.delay(300).fadeToggle(300, 'linear');
	});
  • Вопрос задан
  • 264 просмотра
Подписаться 2 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@Leomund
Что значит "Доступа к этому коду нет"?
Вот такой код для этого используется на сайте:
// Затемнение при наведении на меню
	$leftMenu.on('mouseenter', function() {
		if (window.innerWidth > '610') {
			setTimeout(function() {
				if ($leftMenu.is(':hover')) {
					$hoverFog.fadeIn(300, 'linear');
				}
			}, 300);
		}
	});

	$leftMenu.on('mouseleave', function() {
		setTimeout(function() {
			if (!$leftMenu.is(':hover')) {
				$hoverFog.fadeOut(300, 'linear');
			}
		}, 300);
	});
Ответ написан
Ваш ответ на вопрос

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

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