监听物理返回键时要注意不能在首页(第一次进入时,监听无效)直接操作,
正确方式:有第二次操作时,例如:从首页跳转到个人中心页面在跳到首页,监听有效
附代码:
pushHistory(); var flag = false; setTimeout(function() { flag = true; }, 1000) window.addEventListener('popstate', function(e) { if(flag) { alert(1) } pushHistory(); }, false); function pushHistory() { var state = { title: "title", url: "#" }; window.history.pushState(state, "title", "#"); }
研究之后,感觉定时器没没有用处,经处理之后代码如下
pushHistory(); window.addEventListener("popstate", function(e) { alert("2"); }, false); function pushHistory() { var state = { title: "title", url: "#" }; window.history.pushState(state, "title", "#"); }解决了首次登录无法监听物理返回键的问题!!!