Javascript 如何检查一个人正在查看页面的哪一部分

Javascript 如何检查一个人正在查看页面的哪一部分,javascript,css,Javascript,Css,我正在尝试用一个固定的导航栏创建一个站点。导航栏将有一个透明的背景。我想使导航栏中文本的颜色根据用户正在查看的站点部分进行更改 假设站点从加载到一个白色页面开始。导航栏中的文本应以黑色开始,以便用户能够阅读文本 用户然后滚动到网页的下一部分。假设页面的这部分是黑色的。导航栏中的文本应为白色,以便用户能够阅读文本 我该怎么做?我需要使用事件侦听器吗? (函数($){ $(窗口).on('scroll',function(){ 如果($(this).scrollTop()>200){ $('#sti

我正在尝试用一个固定的导航栏创建一个站点。导航栏将有一个透明的背景。我想使导航栏中文本的颜色根据用户正在查看的站点部分进行更改

假设站点从加载到一个白色页面开始。导航栏中的文本应以黑色开始,以便用户能够阅读文本

用户然后滚动到网页的下一部分。假设页面的这部分是黑色的。导航栏中的文本应为白色,以便用户能够阅读文本

我该怎么做?我需要使用事件侦听器吗?

(函数($){
$(窗口).on('scroll',function(){
如果($(this).scrollTop()>200){
$('#stick').addClass('black-text');
}否则{
$(“#stick”).removeClass('black-text');
}
});
})(jQuery)
正文{
保证金:0;
填充:0;
}
#棍子{
位置:固定;
顶部:2个;
左:2px;
颜色:#fff;
}
#黑色文本{
颜色:#000;
}
#黑色的{
宽度:100%;
高度:200px;
背景色:#333;
}
#白色的{
宽度:100%;
高度:800px;
背景色:#eee;
}

粘贴菜单

我们真的不可能回答这个问题,因为我们不知道是什么控制了颜色……我觉得你更感兴趣的是页面的哪个部分是可见的,而不是用户用眼睛看到的。每一个都有明确的区别和用例。您可以详细说明您的问题吗?您需要计算到您认为需要更改导航栏颜色的下一节的滚动距离,然后执行onscroll事件,检查窗口偏移量是否在该滚动距离和应更改颜色的下一节之间,并相应地应用新的样式。一个更常见的例子是,用户只需将当前部分作为一个单页网站的基础。您可能会找到一些这样的代码示例(但在您的示例中,更改文本颜色而不是底层)。下面是一个例子(尽管使用JQuery):