<script type="text/javascript">
$(function(){
var str = window.location.href;
str = str.substring(str.lastIndexOf('/')+1),
getCookie = localStorage.getItem(str);
if(getCookie){
debugger;
$('html,body').scrollTop(getCookie);
}
});
$(window).scroll(function(){
var str = window.location.href;
str = str.substring(str.lastIndexOf('/')+1);
var top = $(window).scrollTop();
localStorage.setItem(str,top);
})
</script>
上面的代码是获取上次浏览记录,返回页面时获取原来的状态。
关于页面分页选择页码后 ,跳转新页面后返回,想返回到上一次浏览的页面问题 自我总结
1,当点击页面后要往浏览器记录里新增一条
调用js方法
history.pushState方法接受三个参数,依次为:
state:一个与指定网址相关的状态对象,popstate事件触发时,该对象会传入回调函数。如果不需要这个对象,此处可以填null。
title:新页面的标题,但是所有浏览器目前都忽略这个值,因此这里可以填null。
url:新的网址,必须与当前页面处在同一个域。浏览器的地址栏将显示这个网址。
假定当前网址是example.com/1.html,我们使用pushState方法在浏览记录(history对象)中添加一个新记录。
var stateObj = { foo: 'bar' };
history.pushState(stateObj, 'page 2', '2.html');
这样地址栏就可以看到我们自己存的标识了。历史记录也就存进去了
原文:https://blog.csdn.net/qq_35410544/article/details/82916870
2.记录中的路径应该为把 页码当成占位符的一种形式(我用的springmvc)
例:/sys/{page}
这个方法跳转到页面 后把根据page 来加载第几页。
只提供思路 。我也没做!
有大神有链接可以分享给我谢谢 !么么哒!
现在做出来了!
直接上代码
初始跳转路径如下
/list.html
@RequestMapping(value = "/list.html", method = RequestMethod.GET)
public ModelAndView toArticleList(ModelAndView mv, String page) {
if (page == null || page == "") {
page = "1";
}
mv.setViewName("WEB-INF/jsp/portal/usersite/ArticleList.jsp");
mv.addObject("page", page);
return mv;
}
jsp点击页面 方法
var stateObj = { foo: 'bar' };
history.pushState(stateObj, 'page 2', 'list.html?page='+page);//page为你要跳转的页码
添加后 点击页码会往浏览器历史记录里插入一条这样的路径
list.html?page=你要跳转的页码
然后获取页面数据时 根据页码获取就行!!