【发布时间】:2013-08-06 13:06:17
【问题描述】:
HTML5 为manipulate the browser history 引入了一些真正简洁的工具,即history.pushState/replaceState 方法和onpopstate 事件,因此我们不必依赖location.hash es 为我们的 Web 应用程序显示一个有意义的 url。
(或者更好的是,当 IE将不必依赖哈希。)
如果目标状态是使用history.pushState 创建的,则使用浏览器的后退和前进按钮不会重新加载页面,即使 URL 看起来完全不同。
但是,与更改哈希不同的是,如果用户从浏览器的地址栏中更改 url,浏览器会重新加载页面。不知何故,我怀疑是否有有效的解决方案,但问题是:有没有办法阻止浏览器重新加载页面,并强制它推送历史状态?
【问题讨论】: