Попробуйте что-нибудь еще проще:
ю, что это невероятно легко, но я пишу и переписываю эту функцию в течение часа безуспешно:
По клику я хочу добавить «активный» в<li>
по нажатой ссылке и удалите «активный» из всех остальных<li>
в Навбар.
HTML:
<nav>
<ul>
<li><a href="http://0327ea8.netsolhost.com/#home" class="home">Home</a></li>
<li><a href="http://0327ea8.netsolhost.com/blog/" class="blog">Blog</a></li>
<li><a href="http://0327ea8.netsolhost.com/#catalog" class="catalog">Catalog</a></li>
<li><a href="http://0327ea8.netsolhost.com/#authors" class="authors">Authors</a></li>
<li><a href="http://0327ea8.netsolhost.com/#store" class="store">Store</a></li>
</ul>
</nav>
JQuery:
// NAVBAR ADD ACTIVE
$("nav ul li a").click(function(){
$("nav ul li").removeClass('active');
$(this).stop().animate();
$(this).parent().addClass('active');
});
Это просто добавляет классы, но я не могу удалить их.
Я также попытался разделить его на отдельные функции без удачи.
У меня есть .stop (). Animate (), потому что у меня есть .animate () в состоянии наведения ссылок.
Спасибо!
редактировать:
это jQuery для наведения и причина у меня .stop (). animate ()
$("nav ul li a, aside ul li.categories a, div.posts div.foot a").hover(function(){
$(this).animate({'backgroundColor' : '#edf5e9'}, 200);
},function() {
$(this).animate({'backgroundColor' : '#ccd4c8'}, 600);
});
Я не уверен, почему .stop (). Animate () не так. Если у меня нет .animate (), активный класс не залипает, если у меня есть активный класс.
Я все еще не могу заставить класс удалить хотя: - /