h5 history api使用

1. HTML4時代的history APIhtml


A) history.length:當前歷史列表中的歷史記錄數(我大概測了下,IE6+是從0開始的,其餘的是從1開始的,如有誤請反饋哈,^_^); 
B) history.go(n):前進或後退n條記錄,當n=0或空時會刷新當前頁; 
C) history.back():後退一步; 
D) history.forward():前進一步;html5

2. HTML5新增的API
A) history.pushState(data, title [, url]):往歷史記錄堆棧頂部添加一條記錄;data會在onpopstate事件觸發時做爲參數傳遞過去;title爲頁面標題,當前全部瀏覽器都會 忽略此參數;url爲頁面地址,可選,缺省爲當前頁地址; 
B) history.replaceState(data, title [, url]) :更改當前的歷史記錄,參數同上; 
C) history.state:用於存儲以上方法的data數據,不一樣瀏覽器的讀寫權限不同; 
D) window.onpopstate:響應pushState或replaceState的調用;
ajax

 

主要寫html5的api。api

當前活動歷史項改變時會觸發window.onpopstate事件,例如history.go(1),history.back(),history.forward()或者手動點擊前進後退。瀏覽器

history.pushState history.replaceState的調用並不會觸發window.onpopstate事件。wordpress

而後能夠見window.onpopstate事件中作出相應的更改來更新ajax載入,達到刷新頁面的結果。url

 

能夠參考的博客:http://www.zhangxinxu.com/wordpress/2013/06/html5-history-api-pushstate-replacestate-ajax/spa

相關文章
相關標籤/搜索