【发布时间】:2015-02-06 18:49:38
【问题描述】:
我已经搜索了几个小时,试图进行简单的浏览器历史操作。
我有几个菜单链接,我将点击处理程序绑定到它们。链接的 href 只是哈希:href="#Home" 或 href="#About"。
我想在用户点击链接时显示一个子页面,而不需要重新加载页面和更改浏览器网址。
我也用 pushState() 尝试了这个基本示例,但它不起作用: http://jsbin.com/wecubizovu/1/edit?html,js,console
当我在 Chrome 中运行它时,我希望,如果用户点击链接,他会在 url 上附加 #asd 并且 popstate 不会改变。为什么会触发 popstate?如何做到这一点,以便当用户单击链接时,我将哈希附加到浏览器 url,当用户单击浏览器后退按钮时,我捕获该事件并显示我想要的页面?
谢谢!
【问题讨论】:
标签: javascript jquery html google-chrome pushstate