• 490

前端实现局部刷新分页,但浏览器刷新后总是会回到第一页

我利用Ajax获取数据后,前端实现了局部刷新分页效果。但有个问题是,每次浏览器刷新后会回到第一页,而不是当前停留的页码,这个问题怎么解决呢?

还有就是比如有一个图片网站,第一页是page1.html,总共有1000页难道就要建1000个html文件吗?有什么办法实现只有一个html文件,实现局部内容刷新过后,浏览器网页地址也能跟着改变,并且能支持浏览器刷新呢?

阅读 3.3k
评论
    5 个回答
    • 1.3k

    第一个问题:
    你应该是通过点击按钮时向后端请求指定页面的数据的,那么在请求的时候必然需要将点击的那个页数传给后端,所以你可以把这个页数保存到sessionStorage里面,实现在页面第一次加载的时候去检测这个储存字段,把它的值给向后端的首次请求,代替默认请求第一页。另外在用这个值去处理分页的样式状态即可。

    第二个问题:
    数据刷新后浏览器地址跟着改变,可以在数据获取成功后,手动设置hash值来标识页数,这样页面不会改变,也记录下了状态。
    实现浏览器刷新,可以在实现了上一步之后,在进入页面的时候前端检查hash值然后再向后端发起请求获取数据。
    这样不管是刷新浏览器还是手动键入你制定的带hash的页面,前端都会去请求相应页数的数据,然后获取成功后改变新的hash并保持单页。

      相似问题
      推荐文章