文章引用于: http://www.cnblogs.com/stephenykk/p/5057022.htmlhtml
HTML5 history API只包括2个方法:history.pushState()和history.replaceState(),以及1个事件:window.onpopstate。
history.pushState(state, title, url)
调用pushState()方法将新生成一条历史记录,方便用浏览器的“后退”和“前进”来导航(“后退”但是至关经常使用的按钮)。另外,从URL的同源策略能够看出,HTML5 history API的出 发点是很明确的,就是让无跳转的单站点也能够将它的各个状态保存为浏览器的多条历史记录。当经过历史记录从新加载站点时,站点能够直接加载到对应的状态api
history.replaceState()
它和history.pushState()方法基本相同,区别只有一点,history.replaceState()不会新生成历史记录,而是将当前历史记录替换掉。浏览器
window.onpopstate
在只有点击浏览器的“前进”、“后退”这些导航按钮,或者是由JavaScript调用的history.back()等导航方法,且切换先后的两条历史记录都属于同一个网页文档,才会触发本事件。url
window.addEventListener("popstate", function() { var currentState = history.state; /* * 该干吗干吗 */ });