Добрый день, подскажите пожалуйста, как закрыть меню, после клика по ссылке якорю, ведь не происходит перезагрузки страницы. До якоря страница проматывается, а потом заново открывается мобильное меню. Код (Javascript): function menu_bottom_line_active() { var off = $('#mobile-menu > ul > li.show').offset(), left = off.left, right = $(window).width() - left - $('#mobile-menu > ul > li.show').width() + $('#mobile-menu > ul > li.show').width(); $('<style>.navbar-wrap > ul > li.show > a::after{width:' + right + 'px;}</style>').appendTo("head"); } menu_bottom_line_active(); // Menu bottom line function menu_bottom_line() { $("#mobile-menu > ul > li").mouseover(function () { if ($("#mobile-menu > ul > li").hasClass("active")) { $(this).removeClass('active'); } $(this).addClass('active'); var off = $('#mobile-menu > ul > li.active').offset(), left = off.left, right = $(window).width() - left - $('#mobile-menu > ul > li.active').width() + $('#mobile-menu > ul > li.active').width(); $('<style>.navbar-wrap > ul > li.active > a::after,.navbar-wrap > ul > li:hover > a::after{width:' + right + 'px;}</style>').appendTo("head"); }); $("#mobile-menu > ul > li").mouseleave(function () { $(this).removeClass('active'); }); } menu_bottom_line(); $('#mobile-menu').meanmenu({ meanMenuContainer: '.mobile-menu', meanScreenWidth: "992" }); HTML: <div id="mobile-menu" class="navbar-wrap d-none d-lg-flex"> <ul> <li class="show"><a href="#" >Главная</a> </li> <li><a href="#onas" >О нас</a> </li> <li><a href="#conc" >Контакты</a></li> </ul> </div>
Добрый день! Допустим, что у Вас такой код: HTML: <div id="mobile-menu" class="navbar-wrap d-none d-lg-flex"> <ul> <li class="show"> <a href="#" >Главная</a> </li> <li> <a href="#onas">О нас</a> </li> <li> <a href="#conc" >Контакты</a> </li> </ul> </div> <div id="onas"> <!-- Контент О нас --> </div> <div id="conc"> <!-- Контент Контакты --> </div> Для того чтобы закрыть меню, после клика по ссылке, добавьте в JS Код (Javascript): $('#mobile-menu a').on('click', function () { $('#mobile-menu').hide(); }); Однако стоит ещё добавить плавающую кнопку "в начало" и обработчик события "scroll". В нём если Y-scroll=0 открывать меню Код (Javascript): $('#mobile-menu').show(); И ещё совет. Многое из JS можно перенести в CSS используя Media Queries. Удачи!