最近在实现一个需求,要求监听浏览器的返回操作,百度之后都是这个方法,原理如下:
在页面中我们可以使用javascript window history,后退到前面页面,但是由于安全原因javascript不允许修改history里已有的url链接,但可以使用pushState方法往history里增加url链接,并且提供popstate事件监测从history栈里弹出url。既然有提供popstate事件监测,那么我们就可以进行监听。
$(function(){
pushHistory();
window.addEventListener("popstate", function(e) {
alert("监听到返回按钮事件啦");
//根据自己的需求实现自己的功能
//window.location.href = 'https://www.baidu.com'
}, false);
function pushHistory() {
var state = {
title: "title",
url: "#"
};
window.history.pushState(state, "title", "#");
}
});