我有一个动态页面,点击链接会触发一些javascript,将一些页面元素设置为display:none
,从而更改页面的高度。典型的浏览器行为是保留页面顶部的滚动位置。我希望从底部保留滚动位置,因为链接位于页面底部附近,我希望用户的光标在单击后保留在链接上。
我必须这样做的代码是:
var scrollBottom=getDocHeight()-getScrollTop();
//do stuff to change height
window.scrollTo(0,getDocHeight()-scrollBottom);
(使用我发现的跨浏览器功能获取文档高度和滚动位置)。
这在chrome和Internet Explorer中运行良好,但在firefox中,页面高度更改和滚动位置更改之间会有一点延迟。因此,当页面快速重新调整时会出现闪烁,这让我很烦恼。
有人可以建议修复或更自然地记住页面底部而不是顶部的滚动位置吗?
谢谢。