JS返回页面时自动回滚到历史浏览位置
网络编程 2021-07-04 16:46www.168986.cn编程入门
这篇文章主要介绍了JS返回页面时自动回滚到历史浏览位置的相关知识,本文给大家使用的是SessionStorage来存储页面内容,在返回页面时重新加载,具体实现代码大家跟随长沙网络推广一起看看吧
在我的系统实际开发过程中遇到一个需求,我需要让应用在各个页面间跳转时回到每页原先浏览到的位置,方便用户使用。
在网上查资料时,看到的方案有不少,众说纷纭,但真正给出可行可用代码的寥寥无几,所以我干脆按自己的想法用SessionStorage写了一个缓存页面的方法,在离开页面时将需要缓存的容器中所有内容都存到SessionStorage中,在返回页面时重新加载,方便用户操作,效果如下
页面缓存
使用方法
用法也很简单,咱一步一步讲。
,在你需要缓存标签容器的类名中加入cache,并写一个name作为该容器的唯一标记,示例如下
<div class="weui-tab cache" name="index"> .... </div>
,声明全局变量,获取缓存内容和容器,示例如下
var cache; var cacheId = $(".cache").attr("name");
随后,在页面加载时调用缓存,在离开页面时生成缓存,代码如下
window.onload = function () { //载入缓存的列表 loadCache(cacheId); } window.onunload = function () { //可以通过needCache这个flag来控制是否需要缓存 if (localStorage.needCache == 'true') { //离开页面时生成缓存 createCache(cacheId); } } / @brief 可对指定多个控件进行内容和位置的缓存 @param cacheId 缓存元素的id @return null / function createCache(cacheId) { //对内容进行缓存 var list = []; var listController = $('.cache'); $.each(listController, function (index, value, array) { list.push(value.innerHTML); }) //对浏览到的位置进行缓存 var = []; var Controller = $(".cache").find("."); $.each(Controller, function (index, value, array) { .push(value.scrollTop); }) //存入sessionstorage中 sessionStorage.setItem(cacheId, JSON.stringify({ list: list, : })); } / @breif 可对指定多个控件加载缓存 @param 加载缓存的id @return null / function loadCache(cacheId) { //一定要放在整个js文件最前面 cache = sessionStorage.getItem(cacheId); if (cache) { cache = JSON.parse(cache); //还原内容 var listController = $('.cache'); $.each(listController, function (index, value, array) { value.innerHTML = cache.list[index]; }) //还原位置 var Controller = $(".cache").find("."); $.each(Controller, function (index, value, array) { value.scrollTop = cache.[index]; }) } }
大部分都可以直接copy,再根据你的需要改进一下,就可以很好的使用了。
github传送地址
以上所述是长沙网络推广给大家介绍的JS返回页面时自动回滚到历史浏览位置,希望对大家有所帮助,如果大家有任何疑问请给我留言,长沙网络推广会及时回复大家的。在此也非常感谢大家对狼蚁SEO网站的支持!
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程