history.go()和history.back(),history.go()不刷新

history.go()和history.back(),history.go()不刷新

history.back()

back():加载history列表中前一个url,原页面表单内容保存,即后退

history.go()

go():加载history列表中的某个具体页面,即后退或前进+刷新

区别:

history.go(value)会前往任何一个页面;但是history.back()不管括号内传入什么参数,都只会返回上一次刷新的页面,而不能进行多次跳转

history.go(-1)不刷新
//html
<img src="./picture/left.png" alt="" onclick='sessionStorage.setItem("refresh", "true");history.go(-1);'>
//js
//强制刷新页面
window.addEventListener('pageshow', function(event) {
    if(event.persisted) { 
        location.reload();
    } else { 
        if(sessionStorage.getItem('refresh') === 'true') {
            location.reload();
        }
    }
    sessionStorage.removeItem('refresh');
});
补充:

pageshow事件(给window添加):这个事件在页面显示时触发,无论页面是否来自缓存。在重新加载的页面中,pageshow会在load事件触发后触发;

persisted:是pageshow事件的event对象包含的布尔值属性

对于pageshow事件,如果页面是从bfcache(往返内存)中加载的,则这个属性的值为true;否则,这个属性的值为false。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值