我想以跨浏览器的方式使用 jQuery 和 AJAX 实现导航历史。我的方法是在不window.history.pushState
支持./#!/url
window.history.pushState
例如:
<a href="/home">home</a>
<a href="/about">about</a>
<a href="/contact">contact</a>
在支持的浏览器上window.history.pushState
,单击这些链接之一应将地址更改为http://domain.com/home、http://domain.com/about等,而无需刷新页面。当浏览器不支持window.history.pushState
时,应使用片段标识符,即:http://domain.com/#!/home、http://domain.com/#!/about。
更新:根据这里的反馈,我已经实现了Ajax SEO ( git ),它使用
jQuery Address for HTML5 History API 和旧的浏览器回退到/#!/url
.