在同一位置重新加载页面

and*_*rew 2 javascript php dom

嗨,我想知道是否有一种简单的方法可以在重新加载时将页面滚动到其先前的位置.例如,我的页面中间有一个公告牌.公告是分页的,用户可以单击下一步以查看下一批公告.页面重新加载时的问题是跳转到页面顶部的正常行为.当您使用F5重新加载页面时,页面重新加载到相同位置的一个很好的示例.

我知道很难做到这一点.

分页链接就是这样的

 index.php?page_num=2&page_scroll=200;
Run Code Online (Sandbox Code Playgroud)

当页面加载运行一个脚本,该脚本从URL中拉出页面滚动并设置

document.body.ScrollTop==200px.
Run Code Online (Sandbox Code Playgroud)

当然可以访问最后一页的dom并在重定向之前获取它的位置.当你点击F5时,浏览器如何做到这一点?

Ash*_*ley 5

您可以使用html锚点滚动到页面的一部分:

index.php?page_num=2#YOURID
Run Code Online (Sandbox Code Playgroud)

或者使用你的js设置它. location.hash

  • 它不需要<a name>它可以是任何带有id的元素,例如:<div id ="pagination"> </ div>因此,如果您将链接设置为转到包含公告板的元素,你有自动滚动 (2认同)