6

Shopify 如何做到这一点?转到他们的网站,单击“功能”链接,您会看到浏览器地址栏中的 URL 显示:

http://www.shopify.com/tour/sell-online

然后单击任何子链接,您会看到地址栏中的 URL 发生了变化,没有使用哈希,也没有翻页。

我认为他们没有使用 ajax 来更改内容,因为它似乎都包含在页面上的隐藏 div 中,但无论如何,您显然可以使用客户端技巧更改 URL。感谢您的帮助?

4

2 回答 2

9

您使用新的 HTML5 历史 API 来推送新状态。

这是MDN 文档一个很好的教程

请注意,这样做通常很痛苦(您必须正确管理应用程序的状态)并且它不适用于 IE9。它几乎总是与 ajax 结合使用:即使没有重新加载或更改整个页面,它也可以让动态加载的内容成为可收藏的解决方案。

于 2012-11-16T18:11:37.473 回答
2

查看pushState,但请注意并非所有浏览器都支持它。

于 2012-11-16T18:12:31.640 回答