Это из предыдущего вопроса. То, что я хочу достичь, - добавить класс к элементу li после нажатия на тег привязки, который будет отображать новую страницу. Поэтому я понимаю, что когда страница перезагружает новый HTML-файл, и мой метод addclass будет забыт.Добавить класс в li на новой странице
Так что я изучал это, и кажется, что есть еще способ сделать это с помощью jquery? надеялся, что кто-то мог, возможно, уточнить или дайте мне знать, что случилось со следующей
Итак, это то, что я есть .....
Navbar
<ul id="main-menu" class="clearfix sf-js-enabled sf-arrows">
<li>
<a href="/"><i class="icon-home"></i> Home</a>
</li>
<li>
<a href="/pages/aboutme"><i class="icon-desktop"></i> About Me</a>
</li>
<li>
<a href="/pages/portfolio"><i class="icon-picture"></i> Portfolio</a>
</li>
<li>
<a href="/blog"><i class="icon-comments"></i> Blog</a>
</li>
<li>
<a href="/contact"><i class="icon-envelope"></i> Contact</a>
</li>
</ul>
Jquery
$('#main-menu li').each(function() {
var href = $(this).find('a').attr('href');
if (href === window.location.pathname) {
$(this).addClass('current-menu-item');
}
});
Хотя это не работает. Может ли кто-нибудь объяснить, почему? или увидеть ошибку в коде, мои первоначальные мысли, которые мне нужно найти ближе всего к текущему ли?
Любая помощь приветствуется
Спасибо
Не могли бы вы заменить исходный код «Navbar» на фактический визуализированный HTML? Спасибо – DevlshOne
Вы отлаживали код, чтобы узнать, выполняется ли addClass? – Adil
извинения, добавлен визуализированный HTML – Richlewis