我四处寻找这个问题的答案,终于找到了。我写这篇文章的目的是希望为 future 的程序员节省大量时间并减少挫败感。
如果您想查看添加的内容或有任何疑问,请在下面发表评论,我会添加它。随着人们提出问题,这将成为更完整的答案。
最佳答案
这是一个在三大浏览器(IE、Chrome、Firefox)上查找/检测滚动条位置的解决方案。如果您发现这些浏览器的某个版本无法运行,请告诉我,我将编辑此答案以包含该信息。
Older versions of chrome:
var scrollTop = document.body.scrollTop; //Chrome
var scrollLeft = document.body.scrollLeft; //Chrome
Chrome > v.78.0.3904.97 (That I know of)
var scrollTop = window.scrollY; //Chrome
var scrollLeft = window.scrollX; //Chrome
Other Browsers:
var otherScrollTop = document.documentElement.scrollTop; //IE & Firefox
var otherScrollLeft = document.documentElement.scrollLeft; //IE & Firefox
这些变量将检测整个页面的滚动位置。
正如 @Eloy Pineda 提到的:您可以使用以下方式更简洁地编写:
var scrollTop = window.scrollY || document.body.scrollTop || document.documentElement.scrollTop;
var scrollLeft = window.scrollX || document.body.scrollLeft || document.documentElement.scrollLeft;
关于javascript - 跨浏览器 : Detecting scroll position JS only,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29708176/