JS如何实现​返回页面局部块保持不变

      发布在:前端技术      评论:0 条评论

首先通过js保存需要保持不变的DOM块

sessionStorage.setItem("prod_container2", $(".prod_container2").html());

然后在加载前做判断并插入到原来块内

var html=sessionStorage.getItem("prod_container2");
console.log(html);
if(html && html !== 'undefined' && html !== null){
$('.prod_container2').html(html);
}

找到上面的解决方法前,百度搜索说可以通过history.back实现,但我在线测试根本就无法实现返回页面不刷新的情况,所以就有了上面的解决方法。

如下来源于:https://www.cnblogs.com/zc290987034/p/7094615.html

windows窗口对象(历史)history.go(),history.back(),history.forward()。

   因为windows对象引用不是必须的。所以windows.history.go() == history.go()的。

 go()方法只有一个参数,可以是整数、负数。如果是正数,就前进。负数就是后退。(相当于Forward和Back的区别)

 因此,后退一页,可用下面的代码:(后退多页,只需改变go的参数)

  window.history.go(-1);

要前进一页,只需要使用正数;

 history.go(1);

 另外,用back()和forward()方法可以实现同样的操作:

   history.back();   后退

  history.forward(); 前进

还可以用length属性查看历史中的页面数:

 history.length;

2.history.go(-1)和history.back()的区别

 history.go(-1)表示后退与刷新。如数据有改变也随之改变

 history.back()只是单纯的返回到上一页。


相关文章
热门推荐