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

时间:2014-05-27 22:03:55

标签: javascript jquery ajax model-view-controller history.js

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

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

我是jquery,ajax的新手,所以不知道如何设置滚动位置,在后退按钮点击期间保存和加载。

任何帮助都会很棒!

由于

1 个答案:

答案 0 :(得分:0)

我最近使用$(document).scrollTop()实现了类似的功能,并在离开页面时将该图存储在cookie中。我的用例是非ajaxy,但同样的想法很容易适应History.js的事件替换页面加载事件,而不需要为了持久性而烦扰cookie;正如@Kyle在他的评论中提到的那样,History.js允许您使用返回到该状态时返回的pushState存储数据。

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