Переключатель меню работает при каждом втором нажатии, используя jquery - PullRequest
1 голос
/ 08 апреля 2020

Js Код:

$(document).click(function () {
  $('.hide-menu').click(function (event) {
     event.preventDefault();
    $('body').toggleClass('hide-sidebar');
    });
});

- В меню HamBurger есть постоянное меню скрытия класса. - по умолчанию в теге body есть класс 'hide-sidebar'

Ответы [ 2 ]

0 голосов
/ 08 апреля 2020

Ваш код работает, если вы удалите часть $ (document) .click (). Вам также не нужен protectDefault () (но он также работает, если вы оставите его в коде)

$('.hide-menu').click(function(event) {
  $('body').toggleClass('hide-sidebar');
});
.hide-sidebar nav {
  display: none;
}


/*
  These nav styles are only to highlight the showing nav, they are not needed and can be restyled as wished
*/
nav {
  background-color: pink;
  border: 1px solid red;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button type="button" class="hide-menu"> Hide Menu </button>

<nav>
  <a href="#"> link </a>
</nav>
0 голосов
/ 08 апреля 2020

Вероятно, вам нужно только

  $('.hide-menu').click(function (event) {
     event.preventDefault();
     $('body').toggleClass('hide-sidebar');
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...