【发布时间】:2014-07-22 18:34:57
【问题描述】:
我正在尝试创建一个单页应用程序。
为了允许用户分享网站特定部分的链接,我通过在浏览器历史记录中插入条目来模拟导航。
问题是,当用户点击浏览器的后退按钮时,javascript 不会再次触发。有可能强行吗?
我在developer.mozilla.org 中找到了答案。 只需为“popstate”事件添加一个监听器:
window.addEventListener('popstate', function(event) {
if (event.state) {
myFunction();
}
}, false);
“myFunction”将在每次活动历史条目更改时执行。
【问题讨论】:
-
您需要添加更多详细信息吗?您是使用路由库还是尝试直接访问 html5 历史 api?
-
我正在更改当前网址:
window.history.pushState("Object", "Title", myUrl +"search=something");