Las*_*unk 9 javascript jquery sammy.js
我不知道是否有人仍在使用Sammy.js,但我发现它非常适合我对轻量级路由和模板库的需求.如果有人有其他想法,请告诉我.
我的问题是,当我有一个长页面并向下滚动时,单击此页面上的链接然后返回,重新加载整个页面(在Sammy中,调用GET路由)并跳转到页面顶部.
我的问题是:有没有办法让Sammy缓存页面并在回到历史记录时保持滚动位置?
提前致谢.
您可以使用localStorage作为将url-scrolltop存储为一对的替代方法.这样浏览器会记住指定网址的srolltop位置.
var scroltop,url;
$(window).scroll(function() {
scroltop = $(this).scrollTop();
url = window.location.href;
clearTimeout($.data(this, 'scrollTimer'));
$.data(this, 'scrollTimer', setTimeout(function() {
localStorage.setItem(url,scroltop);
}, 250));
});
if(localStorage.getItem(window.location.href)) {
url = window.location.href;
scroltop = localStorage.getItem(url);
$(window).scrollTop(scroltop);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
493 次 |
| 最近记录: |