<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>監聽移動端回退事件</title> </head> <body> <script> /** * 在微信中進入頁面就觸發了popstate事件 * 解決方法:定義boolean * 變量bool=false。在頁面加載后,采用setTimeout方法設置1.5s的超時,在超時執行方法中設置bool=true。 * 在popstate監聽當中增加對bool的判斷,當bool=true時,執行內容 **/ window.onload = function() { // pushHistory(); var bool = false; setTimeout(function() { bool = true; }, 1500); window.addEventListener("popstate", function(e) { if (bool) { alert("我監聽到了瀏覽器的返回按鈕事件啦"); //根據自己的需求實現自己的功能 } // pushHistory(); }, false); } // 自己做的回退事件 function pushHistory() { var state = { title: "title", url: "#" }; window.history.pushState(state, "title", "#"); } </script> </body> </html>