Nav - Закрыть при щелчке или прокрутке
У меня есть навигация, которая выглядит как
.navigation-container
%section.navigation
.container
%nav
%a.item .toggle
%a.item
%a.item
В настоящее время я использую Jquery для переключения его открытия / закрытия.
$('.toggle').click(function toggleMobileNav(e) {
e.preventDefault();
$(this).parents('.navigation').toggleClass('is-showing');
});
Я добавил, изменил его с переключателя на.addClass и добавил.removeClass на $('. Navigation .item'), но когда он закрывает навигацию, я должен дважды щелкнуть по переключателю, чтобы открыть его снова.
Я также попытался удалить.toggleClass (поскольку он устарел?), Выполнив что-то вроде
$('.toggle').click(function () {
if ($('.navigation').hasClass('is-showing')) {
$('.navigation').removeClass('is-showing');
$('.navigation .item:not(:first)').removeClass('is-showing');
} else {
$('.navigation').addClass('is-showing');
}
});
Но мои навыки JS не велики, и это тоже не сработало.
Моя вторая проблема заключается в том, что мне нужно, чтобы навигация закрывалась либо при прокрутке, либо просто касанием в любом месте за пределами навигации. Я предполагаю, что второй вариант намного проще.