RGR*_*RGR 26 javascript jquery google-chrome
我正在尝试根据' document.documentElement.scrollTop'值处理一些代码.它348在FF和IE中返回' 0' 但在Chrome中返回' '.我是否需要做任何事来克服这个问题?
FF:
>>> document.documentElement.scrollTop
342
Run Code Online (Sandbox Code Playgroud)
铬:
document.documentElement.scrollTop
0
Run Code Online (Sandbox Code Playgroud)
jaz*_*mit 42
获取滚动的基于标准的方法是window.scrollY.Chrome,Firefox,Opera,Safari和IE Edge或更高版本均支持此功能.如果您只支持这些浏览器,则应使用此属性.
IE> = 9支持类似的属性window.pageYOffset,为了兼容性,返回与window.scrollY最近的浏览器相同的属性,尽管它可能在某些时候被弃用.
使用document.documentElement.scrollTop或的问题document.body.scrollTop是不需要在其中任何一个上定义滚动.Chrome和Safari定义了<body>元素上的滚动,而Firefox则在<html>返回的元素上定义了它document.documentElement.这不是标准化的,并且可能在未来版本的浏览器中发生变化.但是,如果存在scrollY或pageYOffset不存在,这是获取滚动的唯一方法.
TL; DR:
window.scrollY || window.pageYOffset || document.body.scrollTop + (document.documentElement && document.documentElement.scrollTop || 0)
Nic*_*oum 19
试试这个
window.pageYOffset || document.documentElement.scrollTop
Run Code Online (Sandbox Code Playgroud)