JS监听浏览器后退事件

有时在做业务需求时,会要求点击浏览器后退键时自定义一些事情,例如:跳转到其它页面?

看看代码:

var counter = 0;
    if (window.history && window.history.pushState) {
        $(window).on('popstate', function () {
            window.history.pushState('forward', null, '#');
            window.history.forward(1);
            // alert("您点击了回退");  
            self.location="orderinfo.html"; //如需要跳转页面就用它
        });
    }
    //在IE中必须得有这两行
    window.history.pushState('forward', null, '#'); 
    window.history.forward(1);
});

方法复习:

window.history.go(-1); //表示后退与刷新。如数据有改变也随之改变;
window.history.back();  //只是单纯的返回到上一页。
window.location.href = document.referrer; //返回上一页并刷新,真正实现页面后退并刷新页面

history.go(1); //前进一页
history.forward(); //前进一页

history.length; //用length属性查看历史中的页面数

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

<button onclick="history.go(-1);">返回上一页</button>
<a href="javascript:history.back();">返回上一页</a>

Javascript 刷新页面的几种方法:

history.go(0);
location.reload();
location = location;
location.assign(location);
document.execCommand('Refresh');
window.navigate(location);
location.replace(location);
document.URL = location.href;


原文链接:HelloWeb前端网 » JS监听浏览器后退事件 » 感谢您的浏览,希望能有所帮助。

欢迎您加入“Helloweb” 学习交流群:HelloWeb-学习交流群 196291215 共同交流并结识同行,在这里说出您的收获与感想或有什么不同的观点,我们期待您的留言,分享,让我们一起进步!

喜欢 ()or分享