1. 程式人生 > >HTML5 瀏覽器返回按鈕/手機返回按鈕事件監聽

HTML5 瀏覽器返回按鈕/手機返回按鈕事件監聽

手機 鎖定 listitem con 按鈕 spa color cnblogs java

1.HTML5 History對象

支持使用pushState()方法修改地址欄地址,而不刷新頁面。

popstate事件

當history實體被改變時,popstate事件將會發生。調用pushState()方法或者replaceState()方法是觸發,當用戶點擊瀏覽器返回按鈕時也會觸發。

事件註冊實例:

window.addEventListener(‘popstate‘, function (event) {
    console.info(event);
    console.info(event.state);
    console.info(event.state.id);
});

2.根據這個事件,如果在觸發是重新添加當前頁面狀態,這樣的話用戶通過返回按鈕就無法離開這個頁面了。

從而實現返回按鈕被鎖定的狀態

<div id="number"></div>

<script>
    pushHistory();
    var number=0;
    window.addEventListener("popstate", function (e) {
        // alert("我監聽到了瀏覽器的返回按鈕事件啦"); //根據自己的需求實現自己的功能 
        number++;
        var p=document.createElement(
p); p.innerHTML=number; document.getElementById(number).appendChild(p); pushHistory(); //註,此處調用,可以用戶一直停留著這個頁面 }, false); function pushHistory() { var state = { title: "title", url: "#" }; window.history.pushState(state,
"title", "#"); } </script>

更多:

HTML5 History對象,Javascript修改地址欄而不刷新頁面

HTML5 History對象,Javascript修改地址欄而不刷新頁面(二)

HTML5 Geolocation API地理定位整理(二)

HTML5 瀏覽器返回按鈕/手機返回按鈕事件監聽