在Google Chrome中,document.body.scrollTop始终返回0.
我试试
if (window.pageYOffset > 0) { st = window.pageYOffset; } else if (document.documentElement.scrollTop > 0) { st = document.documentElement.scrollTop; } else { st = document.body.scrollTop; }
但不行.
document.body.scrollTop正在使用firefox.
即使在Chrome控制台中,当我在控制台中使用此代码时也无法正常工作.
enter code here $('html,body').stop().animate({ scrollTop: 50 },500);
解决方法
我也打了这个.根据此问题,此行为在Chrome 60和Chrome 61之间发生了变化:
https://bugs.chromium.org/p/chromium/issues/detail?id=766938
根据我的阅读,新行为实际上更符合标准.针对该问题的评论#5的建议修正是:
If you are looking for an interoperable way of querying scrollTop you can use the window.scrollY attribute or doing something like document.documentElement.scrollTop || document.body.scrollTop