Это моя разметка
<header id="header">
<nav>
<ul class="menu">
<li id="homeSecLink" class="active"><a href="#Home" class="homeLink">Home</a></li>
<li><a href="#Partners">Partners</a></li>
<li><a href="#About">About</a></li>
<li><a href="#Contact">Contact</a></li>
</ul>
</nav>
</header>
При загрузке страницы я пытаюсь добавить класс borderGap
в заголовок, если homeSecLink
имеет active
класс else remove borderGap
Здесь addClass
работает, но removeClass
не работает
Это то, что я сделал:
$(document).ready(function() {
if ($('#homeSecLink').hasClass("active")) {
$('#header').addClass('borderGap');
} else {
$('#header').removeClass('borderGap');
}
});
Для работы removeClass
вам необходимо удалить active class
HTML
<header id="header">
<nav>
<ul class="menu">
<li id="homeSecLink" class="active"><a href="#Home" class="homeLink">Home</a></li>
<li><a href="#Partners">Partners</a></li>
<li><a href="#About">About</a></li>
<li><a href="#Contact">Contact</a></li>
</ul>
</nav>
</header>
<a id="toggle">Toggle</a>
JavaScript
$(document).ready(function() {
$('#toggle').click(function() {
if ($('#homeSecLink').hasClass("active")) {
$('#header').addClass('borderGap');
$('#homeSecLink').removeClass('active');
} else {
$('#header').removeClass('borderGap');
$('#homeSecLink').addClass('active');
}
});
});
active
класс добавлен серверным скриптом? Это означает, что это не входит в сферу действия ОП.
not working
?