0

好的,因此有解决方案,如修改 URL 而无需重新加载页面,但我对此有一个问题。

所以这就是我打算做的(假设我的网址是example.com) 1. 使用pushState 我打算将浏览器地址更改为example.com/myprofile/myalbum。所以需要明确的是,这个新的 url 可能存在也可能不存在,但浏览器地址无论如何都会改变。在我们的例子中,这个 url 实际上并不存在,但我们使用该地址来标记网页的更改状态。2. 使用 ajax 将有关“myprofile > myalbum”的数据加载到同一页面。

但现在这是我一直在思考的问题。如果用户直接在新选项卡上加载 example.com/myprofile/myalbum 会怎样。此页面显然会引发未找到的错误,因为它不存在。

那么如何加载对应这个假网址的ajax呢?例如http://www.usatoday.com/news/似乎做得很好(除非那是一个 iframe,它不会那么好)。

4

1 回答 1

1

您可以将重写规则添加到您的网络服务器,将特定 URL 或某些匹配模式的内容转换为您的脚本可以用来显示正确页面的内容。您可以让它仅在内部重写 URL,因此用户仍然可以在浏览器中看到原始 URL。如:

RewriteRule /myprofile/(\w*) /index.php?path=/myprofile/$1

不同的网络服务器可能有不同的语法,但它们是相似的。

于 2013-05-06T10:50:33.003 回答