Я пытаюсь сделать простой активный класс для элемента nav. Хеш нав.
<footer>
<ul>
<li>
<a class="footer-link" href="#contact" data-scroll><span class="icon-chat"> </span>Contact</a>
</li>
<li>
<a class="footer-link" href="#work" data-scroll><span class="icon-tools-2"></span>Work</a>
</li>
<li>
<a class="footer-link" href="#services" data-scroll><span class="icon-briefcase"></span>Services</a>
</li>
<li>
<a class="footer-link" href="blog.html"><span class="icon-pencil"></span>Blog</a>
</li>
</ul>
</footer>
И тогда js:
$('a.footer-link').click(function() {
$('a.footer-link').removeClass("active");
return $(this).addClass("active");
});
Каждый раз, когда я меняю страницу на страницу блога - ссылка активна, но как только страница загружает ее. Первые три a
находятся на одной странице и сохраняют "активный" класс, который он теряется при загрузке страницы блога.
Есть предположения?
Вы пробовали что-то вроде этого:
Установите класс в свой html-элемент для каждой страницы, например
<body class="blog">/* Your HTML*/</body>
И дополнительный класс для ваших предметов, возможно (если вы не хотите использовать селектор ahref для стилей)
<a class="footer-link blog"> ... </a>
И когда вы получите новую страницу, ваша глобальная вспомогательная функция JS проверит, что добавить.
(function () {
var bodyClass = $('body').attr('class');
switch (bodyClass) {
case "blog":
$('a.footer-link.body').addClass('active');
break;
default:
/* other functions */
};
})();