popstate
2025年01月07日
一、认识
popstate
每当激活同一文档中不同的历史记录条目时,popstate
事件就会在对应的 window
对象上触发。如果当前处于激活状态的历史记录条目是由 history.pushState()
方法创建的或者是由 history.replaceState()
方法修改的,则 popstate
事件的 state
属性包含了这个历史记录条目的 state
对象的一个拷贝。
popstate
事件只会在浏览器某些行为下触发,比如点击后退按钮(或者在 JavaScript
中调用 history.back()
方法)。即,在同一文档的两个历史记录条目之间导航会触发该事件。调用 history.pushState()
或者 history.replaceState()
不会触发 popstate
事件。
二、语法
window.onpopstate = function(){
}
window.addEventListener('popstate',function(){
},false);