Изменение состояния на основе ссылки привязки - работает при загрузке, но не при изменении привязки? - PullRequest
1 голос
/ 18 апреля 2019

Я работаю над личным проектом для своего развития, и ради жизни я не могу решить, как решить мою проблему.

Моя проблема: Если переменная #anchor в адресной строке 'this', добавьте класс. Этот аспект работает нормально, но если нажать кнопку и изменить привязку, класс не будет применен сам по себе. Как я могу изменить код для изменения состояния? Любые мысли или предложения приветствуются.

Я пробовал разные комбинации, но та, что ниже, ближе всего к цели, которую я чувствую?

jQuery(function($) {
  var path = location.href;
  $('li a').each(function() {
    if (this.href === path) {
      $(this).addClass('current-link');
    }
  });
});

1 Ответ

0 голосов
/ 18 апреля 2019

Попробуй,

jQuery(function($) {
  var path = location.href;
  $('li a').each(function() {
    if (this.href === path) {
      $(this).addClass('current-link');
    }
  });

  // Add this code
  $('li a').click( function() {
    $( this ).parents('ul').find('.current-link').removeClass('current-link');
    $( this ).addClass('current-link');
  } );
});
...