我的导航栏有问题。我只需要从 li
中删除事件类,以便在滚动时将此类放到第二个 li
中,这是代码:
$(window).scroll(function () {
if ($(this).scrollTop() >= 650) {
$('#about').addClass("active");
} else {
$('#home').removeClass("active");
}
});
最佳答案
您可以为 #home
元素使用 removeClass()
,为 #about
元素使用 addClass()
,反之亦然反之亦然。因此,以下代码将起作用:
$(window).scroll(function() {
if ($(this).scrollTop() >= 650) {
$('#about').addClass("active");
$('#home').removeClass("active");
} else {
$('#about').removeClass("active");
$('#home').addClass("active");
}
});
工作演示
$(window).scroll(function () {
if ($(this).scrollTop() >= 650) {
$('#about').addClass("active");
$('#home').removeClass("active");
} else {
$('#about').removeClass("active");
$('#home').addClass("active");
}
});
.fixed{
position : fixed;
top: 0;
left:0;
right:0;
}
.long{
height : 5000px;
}
.active{
background : red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="fixed">
<div id="home" class="active">Home</div>
<div id="about">About</div>
</div>
<div class="long"></div>
关于javascript - 如何从 li 中删除事件类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42332389/