Javascript 滚动到特定div类时更改div颜色
当我滚动时添加背景色时,我遇到了一些问题。当前我的代码正在工作,但直到我滚动到div的末尾,它才显示出来。该div是Javascript 滚动到特定div类时更改div颜色,javascript,html,jquery,scroll,Javascript,Html,Jquery,Scroll,当我滚动时添加背景色时,我遇到了一些问题。当前我的代码正在工作,但直到我滚动到div的末尾,它才显示出来。该div是背景覆盖 我想在滚动背景覆盖类时激活黑色类。另一个问题是当我滚动过div时,类没有删除。我的以下代码是否有遗漏 代码片段: $(函数(){ $(窗口)。滚动(函数(){ var scroll=$(窗口).scrollTop(); 如果(滚动>=$('.background overlay').offset().top){//检查偏移顶部 $(“.background overl
背景覆盖
我想在滚动背景覆盖类时激活黑色类。另一个问题是当我滚动过div时,类没有删除。我的以下代码是否有遗漏
代码片段:
$(函数(){
$(窗口)。滚动(函数(){
var scroll=$(窗口).scrollTop();
如果(滚动>=$('.background overlay').offset().top){//检查偏移顶部
$(“.background overlay”).addClass(“黑色”);
}如果(滚动>=$('.background overlay').offset().top+$('.background overlay').height()){//检查滚动高度
$(“.background overlay”).removeClass(“黑色”);
}
});
});代码>
。全高,.page{
高度:500px;
}
布莱克先生{
背景:#000000;
过渡:背景色1s轻松;
}
如果我理解你的问题,第一个条件检查应该是你的div的偏移-高度
,第二个条件检查是条件错误(条件转换)
另外,将过渡添加到您的.background overlay
而不是.black将在上下滚动时生效
$(函数(){
$(窗口)。滚动(函数(){
var scroll=$(窗口).scrollTop();
变量$divBlack=$('.background overlay');
如果(滚动>=$divBlack.offset().top-$divBlack.height()){//检查顶部偏移量
$divBlack.addClass(“黑色”);
}否则如果(滚动也要展开,您也可以对背景覆盖部分使用.scrollTop()
:
$(函数(){
$(窗口)。滚动(函数(){
var scroll=$(窗口).scrollTop();
如果(滚动>=$('.background overlay').scrollTop()){/=$('.background overlay').scrollTop()+$('.background overlay').height()){//检查滚动高度
$(“.background overlay”).removeClass(“黑色”);
}
});
});
。全高,.page{
高度:500px;
}
布莱克先生{
背景:#000000;
过渡:背景色1s轻松;
}