使用history.js,当我们点击后退按钮时,回到相同的滚动位置

Using history.js come to the same scroll position when we click back button

本文关键字:位置 滚动 按钮 js history 我们 使用      更新时间:2023-09-26

我想实现一个功能,其中在点击后退按钮,我回到相同的位置。一个很好的例子可能是任何电子商务网站。当我们向下滚动并点击产品,然后从产品页面返回时,我们应该到达该产品所在页面的相同位置。

我们使用history.js查找hashchange和pushstate来保存条目。但是当我点击后退按钮时,它会加载到页面顶部,而不是项目滚动位置。此外,我们主要使用AJAX加载数据

我对jquery, ajax相当陌生,所以不知道如何设置滚动位置,保存和加载期间后退按钮点击。

任何帮助将是伟大的!

谢谢

我最近使用$(document).scrollTop()实现了类似的东西,并在离开页面时将该数字存储在cookie中。我的用例是非ajax的,但同样的想法可以很容易地与History.js的事件取代页面加载事件相适应,而不需要为cookie的持久性而烦恼;正如上面@Kyle在他的评论中提到的,History.js允许你用pushState存储数据,当你返回到那个状态时返回。

参见jQuery的文档:http://api.jquery.com/scrolltop/