2

我使用 .load 发出 ajax 请求。它运作良好。但我的网址栏有问题。我想更改网址栏。例如。当 ajax 加载关于/联系页面时。我想将 url 栏更改为 about/contact。

我用过这个。

window.location.replace = about/contact;

但现在,他直接重定向到这个页面。但我不希望页面重定向到该 url。我该如何解决?

谢谢!

4

2 回答 2

5

您可以使用 History API 来做到这一点,虽然支持还不是普遍的,但在 IE 以外的浏览器中很好。有关它的使用示例:http: //html5demos.com/history。它将根据需要修改可见 URL,还允许您使用后退按钮返回到以前的状态。

建议您为此使用history.js之类的东西,因为它对尚不支持历史 API 的浏览器有相应的行为。它将首先使用 History API,如果不存在将使用哈希技术。

如果你想自己动手,那么一定要查看 History API 以及它是如何工作的,这里有一些地方可以开始:文章 1文章 2

于 2012-09-19T07:17:13.857 回答
2

使用 ajax 历史插件,如 jquery-address。

看看这个: https ://stackoverflow.com/questions/116446/what-is-the-best-back-button-jquery-plugin

于 2012-09-19T07:16:58.477 回答