Как использовать JQuery, чтобы выделить 'nav-link' при выборе? - PullRequest
1 голос
/ 30 апреля 2020

Я хочу внедрить JQuery в свой проект Bootstrap, чтобы при выборе страницы на веб-сайте она выделялась на указанной странице. Я думаю, что на данный момент мне нужны отзывы сообщества. Вот JQuery Я пытаюсь реализовать, а также мой код для навигации, соответственно:

$(function () {
    $('.nav-link a').click(function () {
        $('.nav-link a').removeClass('active');
        $(this).addClass('active');
    });
});


<nav class="navbar navbar-expand-md navbar-dark fixed-top">
    <div class="container">
      <a class="navbar-brand" href="index.html">Homeschool Herpetology</a>
      <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
      </button>
      <div class="navbar-collapse collapse" id="navbarResponsive">
        <ul class="navbar-nav ml-auto">
          <li class="nav-item active">
            <a class="nav-link" href="index.html">Home</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="about.html">About</a>
          </li>
          <li class="nav-item dropdown">
            <a class="nav-link" href="reptiles.html">Our Reptiles</a>
            <div class="dropdown-menu" aria-labeledby="navbarDropdown">
              <a class="dropdown-item" href="#">Little Foot</a>
              <div class="dropdown-divider"></div>
              <a class="dropdown-item" href="reptiles.html#mangoMedia">Mango</a>
              <div class="dropdown-divider"></div>
              <a class="dropdown-item" href="reptiles.html#montyMedia">Monty</a>
              <div class="dropdown-divider"></div>
              <a class="dropdown-item" href="reptiles.html#sheikMedia">Sheik</a>
              <div class="dropdown-divider"></div>
              <a class="dropdown-item" href="reptiles.html#zeldaMedia">Zelda</a>
            </div>  
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">Booking</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="contact.html">Contact</a>
          </li>
        </ul>
      </div>
    </div>
  </nav>

1 Ответ

1 голос
/ 30 апреля 2020

Это то, о чем вы думали?

$(function(){
        $('a').each(function(){
            if ($(this).prop('href') == window.location.href) {
                $(this).addClass('active'); $(this).parents('li').addClass('active');
            } else 
            { 
              $(this).removeClass('active'); 
              $(this).parents('li').removeClass('active');
            }
        });
    });

Затем вы просто стилизуете свой класс active в CSS для того стиля, который вы хотели бы иметь у выделенной ссылки. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...