javascript - 在用户仅在 200px 和 300px 之间滚动时添加一个类
问题描述
当用户向下滚动页面时,我正在尝试向 div 添加一个类。当他们向下滚动200px
页面时,我希望添加一个类,然后一旦用户向下滚动,300px
我希望删除该类。同样,当用户向上滚动页面并300px
从顶部滚动时,我希望添加该类,直到它到达200px
然后删除该类。
我尝试了很多变化,但我认为我的方法都是错误的。这是到目前为止我已经走了多远的 jsfiddle - http://jsfiddle.net/v8my3sr1/
$(window).on('scroll',function() {
var scroll = $(window).scrollTop();
if (scroll >= 200) {
$(".trigger").addClass("wow");
} else {
$(".trigger").removeClass("wow");
}
});
解决方案
你的条件不正确。您应该检查该scroll
值是否介于200
和300
$(window).on('scroll',function() {
var scroll = $(window).scrollTop();
if (300 >= scroll && scroll >= 200) {
$(".trigger").addClass("wow");
} else {
$(".trigger").removeClass("wow");
}
});
$(window).on('scroll',function() {
var scroll = $(window).scrollTop();
if (300 >= scroll && scroll >= 200) {
$(".trigger").addClass("wow");
} else {
$(".trigger").removeClass("wow");
}
});
.container {
height: 2000px;
}
.trigger {
margin-top: 300px;
height: 400px;
}
.wow {
background: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
<div class="trigger">
<h1>Trigger container</h1>
</div>
</div>
您也可以.toggleClass()
用来简化代码
$(window).on('scroll',function() {
var scroll = $(window).scrollTop();
$(".trigger").toggleClass("wow", 300 >= scroll && scroll >= 200);
});
推荐阅读
- reactjs - 在 React Web 应用程序的地址栏中键入特定 URL 时无法转到特定 URL
- c# - Blazor-Server 如何使用动态 linq 创建 ValueExpression
- kotlin - 使用 kotlin 发送集成在应用程序中的附件
- python - Python Flask validate_on_submit() https 错误
- matlab - 如何在 MATLAB App 中显示计算正在进行
- google-analytics-api - 从 Google_Service_AnalyticsReporting (google/apiclient SDK) 切换到 BetaAnalyticsDataClient (google/analytics-data SDK)
- flask - 在“app”heroku 中找不到属性“run”
- postgresql - Rspec 数据库视图为空
- python - Python - 将包含 NULL 值的数据从 Oracle 移动到 PostgreSQL 数据库
- pytorch - 火炬填充的工作原理