Как изменить значок основания гамбургера, чтобы закрыть значок при нажатии (т. Е. Открыть мобильное меню) - PullRequest
1 голос
/ 16 марта 2020

В фундаментальном меню значок раскрывающегося меню находится на кнопке следующим образом:

1002 *<button class="menu-icon dark" type="button" data-toggle=""></button>

Normal menu icon

.menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    -webkit-box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    content: '';
}

Как сделать так, чтобы при открытии мобильного меню значок менялся на этот -

enter image description here

И наоборот

Кодовая ссылка на верхнюю панель

1 Ответ

1 голос
/ 16 марта 2020

Вам нужно будет добавить собственный код для достижения этой цели. Решение заключается в том, что вы добавляете прослушиватель событий, который прослушивает нажатие пользователем кнопки. После щелчка, добавьте активный класс и стилизуйте активный класс по необходимости в таблице стилей.

Следующий код должен помочь.

Добавьте следующий код в свой файл стиля:

//SCSS for Active class

.menu-icon.dark{
   &:after{
     transition: all 0.3s ease;
  }
     &:before{
     transition: all 0.3s ease;
  }
}
.menu-icon.dark.active{
  transition: all 0.3s ease;

  &:after{
    transition: all 0.3s ease;
    background: #0a0a0a;
    box-shadow: none;
    transform: rotate(45deg);
    top: 12px;
    &:hover{
      opacity: 0.9;
    }

  }
   &:before{
     transition: all 0.3s ease;
    position: absolute;
    top: 12px;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    box-shadow: none;
    transform: rotate(-44deg);
    content: "";
    &:hover{
      opacity: 0.9;
    }
  }
}

В файле javascript добавьте следующий код:

//Adds active class to the menu icon

$('.menu-icon').on('click', function(){

  $(this).toggleClass("active");

});

...