Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 车窗顶部滚动功能不正确_Javascript_Jquery_Scroll_Window - Fatal编程技术网

Javascript 车窗顶部滚动功能不正确

Javascript 车窗顶部滚动功能不正确,javascript,jquery,scroll,window,Javascript,Jquery,Scroll,Window,我正在运行一个窗口滚动功能,尝试在div#home-cover1显示时进行测量。然后,当代码不在视图中时,运行else语句 如果你打开控制台,你会看到else从未运行过,不管你在哪个分区,它都会显示“home-cover1”(主页) 有人知道为什么吗 $(函数(){ 风险值第1部分=$(“#家庭保险单1”); 如果(第1节长度){ var oTop=section1.offset().top-window.innerHeight; } $(窗口)。滚动(函数(){ var pTop=$(doc

我正在运行一个窗口滚动功能,尝试在div
#home-cover1
显示时进行测量。然后,当代码不在视图中时,运行else语句

如果你打开控制台,你会看到else从未运行过,不管你在哪个分区,它都会显示“home-cover1”(主页)

有人知道为什么吗

$(函数(){
风险值第1部分=$(“#家庭保险单1”);
如果(第1节长度){
var oTop=section1.offset().top-window.innerHeight;
}
$(窗口)。滚动(函数(){
var pTop=$(document.scrollTop();
if(pTop>oTop){
控制台日志(“在上面”);
$(“#提案触发器”).removeClass('active');
}
否则{
console.log(“Nope it”);
$(“#提案触发器”).addClass(“活动”);
}
});
});
#家居用品1{
背景:绿色;
高度:100vh;
宽度:100%;
}
#红色的{
背景:红色;
高度:100vh;
宽度:100%;
}
#蓝色的{
背景:蓝色;
高度:100vh;
宽度:100%;
}
#提案触发器{
背景:#3b3b;
宽度:100px;
高度:100px;
位置:固定;
底部:0;
右:200px;
不透明度:0;
转换:ease 0.3s;-webkit转换:ease 0.3s;
}
#主动的{
不透明度:1;
转换:ease 0.3s;-webkit转换:ease 0.3s;
}


快速检查后
var oTop=section 1.offset().top-window.innerHeight结果为负数,因此
pTop
始终大于
oTop
。您必须用
window.innerHeight
减去
section1.offset()
。您还必须将
pTop>oTop
切换到
pTop
。这将检查
scrollTop
是否已位于该部分下方

$(函数(){
风险值第1部分=$(“#家庭保险单1”);
如果(第1节长度){
var oTop=window.innerHeight-section 1.offset().top;
}
$(窗口)。滚动(函数(){
var pTop=$(document.scrollTop();
控制台日志(pTop);
控制台日志(oTop);
if(pTop
#家居用品1{
背景:绿色;
高度:100vh;
宽度:100%;
}
#红色的{
背景:红色;
高度:100vh;
宽度:100%;
}
#蓝色的{
背景:蓝色;
高度:100vh;
宽度:100%;
}
#提案触发器{
背景:#3b3b;
宽度:100px;
高度:100px;
位置:固定;
底部:0;
右:200px;
不透明度:0;
转换:ease 0.3s;-webkit转换:ease 0.3s;
}
#主动的{
不透明度:1;
转换:ease 0.3s;-webkit转换:ease 0.3s;
}

这看起来也很奇怪。