Задать вопрос
@Code-NaN

Как добавить класс главному пункту меню?

Как подсветить пункт меню, если совпадает с url страницы? Этот код работает только при нажатии на родительский элемент. А как сделать чтоб при нахождении в подменю добавить класс родителю?

<ul id="nav">
       <li class="current-menu-item"><a href="index.html">Home</a></li>    
<ul class="submenu">
             <li class="submenu-menu-item"><a href="page-full.html">full</a></li>
             <li class="submenu-menu-item"><a href="page-features.html">featurs</a></li>
             <li class="submenu-menu-item"><a href="page-typography.html">typography</a></li>
          </ul>
       <li class="current-menu-item"><a href="page.html">menu-2</a>
          <ul class="submenu">
             <li class="submenu-menu-item"><a href="page-full.html">full</a></li>
             <li class="submenu-menu-item"><a href="page-features.html">featurs</a></li>
             <li class="submenu-menu-item"><a href="page-typography.html">typography</a></li>
          </ul>
       </li>
</ul>

$(function() {
  var pathname_url = window.location.pathname;
  var href_url = window.location.href;

  $("#nav li").each(function() {
    var link = $(this).find("a").attr("href");
    if (pathname_url == link || href_url == link) {
      $(this).addClass("active");
    }
  });
});
  • Вопрос задан
  • 138 просмотров
Подписаться 2 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Stepik
    JavaScript с нуля - основы языка и практика для начинающих
    2 недели
    Далее
  • Merion Academy
    Фронтенд-разработчик с нуля
    4 месяца
    Далее
  • Skypro
    JavaScript-разработчик с нуля
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
@thisuserhatephp
Офлайн - losers Онлайн - lusers
$(this).addClass("active").closest('.current-menu-item').addClass('active');


https://jsfiddle.net/mfLv8tcd/
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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