如何获取和设置当前网页滚动位置?

2024-03-16

如何获取和设置当前网页滚动位置?

我有一个很长的表单,需要根据用户操作/输入进行刷新。发生这种情况时,页面会重置到最顶部,这对用户来说很烦人,因为他们必须向下滚动回到原来的位置。

如果我可以在页面重新加载之前捕获当前滚动位置(在隐藏输入中),那么我可以在重新加载后将其设置回来。


目前接受的答案是不正确的 -document.documentElement.scrollTop在 Chrome 上始终返回 0。这是因为 WebKit 使用body用于跟踪滚动,而 Firefox 和 IE 使用html.

要获取当前位置,您需要:

document.documentElement.scrollTop || document.body.scrollTop

您可以将当前位置设置为页面下方 1000px,如下所示:

document.documentElement.scrollTop = document.body.scrollTop = 1000;

或者,使用 jQuery(在使用时为其添加动画!):

$("html, body").animate({ scrollTop: "1000px" });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取和设置当前网页滚动位置? 的相关文章