Javascript 当滚动开始时,如何将window.pageOffsetY值传递给固定变量?

Javascript 当滚动开始时,如何将window.pageOffsetY值传递给固定变量?,javascript,Javascript,我正在使用window.pageYOffset获取页面上的滚动位置。 问题是,我希望将滚动位置传递到一个变量中,我可以引用该变量来了解用户滚动时的滚动位置 无论我做什么,我都无法得到一个固定的var。它总是一个对值的引用,不断更新 (()=>{ 常量处理程序=()=>{ 常量偏移=window.pageYOffset | | window.scrollY; var focusedElement=header.querySelector('.focus'); 如果(聚焦){ var offsetW

我正在使用
window.pageYOffset
获取页面上的滚动位置。 问题是,我希望将滚动位置传递到一个变量中,我可以引用该变量来了解用户滚动时的滚动位置

无论我做什么,我都无法得到一个固定的var。它总是一个对值的引用,不断更新

(()=>{
常量处理程序=()=>{
常量偏移=window.pageYOffset | | window.scrollY;
var focusedElement=header.querySelector('.focus');
如果(聚焦){
var offsetWhenFocuseIsTrue=偏移量;
log('滚动页面偏移量为'+offsetWhenFocuseIsTrue');
//我想在这里做的是使用输出的第一个值,这样我就可以计算某个元素是否已滚动过去
}
addEventListener('scroll',handler,false);
})();
因此,您可能可以猜到我想要实现的目标。当用户滚动时,在按定义检测到聚焦之前,不会发生任何事情,然后我想在此时传递偏移量的值。我想要一个固定值,但控制台显示如下内容:

the scroll pageOffset is 322 navigation.js:225:13
the scroll pageOffset is 341 navigation.js:225:13
the scroll pageOffset is 372 navigation.js:225:13
the scroll pageOffset is 383 navigation.js:225:13
the scroll pageOffset is 392 navigation.js:225:13
the scroll pageOffset is 397 navigation.js:225:13
the scroll pageOffset is 399 navigation.js:225:13
the scroll pageOffset is 395 navigation.js:225:13
the scroll pageOffset is 368 navigation.js:225:13
the scroll pageOffset is 315 navigation.js:225:13
the scroll pageOffset is 281 navigation.js:225:13
the scroll pageOffset is 249 navigation.js:225:13
the scroll pageOffset is 216 navigation.js:225:13
the scroll pageOffset is 188 navigation.js:225:13
the scroll pageOffset is 37 navigation.js:225:13

var offsetWhenFocuseIsTrue
中删除var,并在iifethanks之外添加
var offsetWhenFocuseIsTrue;
,以获得您的答案,不幸的是,它确实有效。日志输出与以前相同。我编辑了这篇文章,并提供了一些更详细的信息:我想做的是使用输出的第一个值,以便我可以计算某个元素已被滚动如果我知道您试图完成的是检测元素是否已滚动出视图?您是否考虑过为此使用交叉点观察者API?(请参阅:)非常简单地说,我希望一个div只在scroll上隐藏,但如果它不是完全以小分辨率显示,则允许用户滚动。例如,我有一个“hideOnScroll”之前的东西,但它太严格了。我不知道这个观察器API,我将阅读有关它的内容。感谢您的帮助answer@JonKoops问题是我的div是固定的,这就是为什么我不能真正检测到它是否已被滚动出视图!!从
var offsetWhenFocuseIsTrue
中删除var,然后添加
var offsetWhenFocuseIsTrue;
out在这里我想做的是使用输出的第一个值,这样我就可以计算某个元素是否被滚动。如果我知道你想做的是检测某个元素是否被滚动,那么你就可以完成检测从视图中退出?您是否考虑过为此使用Intersection Observer API?(请参阅:)非常简单地说,我希望div仅在scroll上隐藏,但如果它不完全以小分辨率显示,则允许用户滚动。例如,我有一个“hideOnScroll”之前的东西,但它太严格了。我不知道这个观察器API,我将阅读有关它的内容。感谢您的帮助answer@JonKoops问题是我的div是固定的,这就是为什么我不能真正检测到它是否已被滚动出视图!!