History API - 用几个斜杠重写URL?

时间:2012-01-24 09:19:10

标签: html5 browser-history pushstate history.js

我正在使用HTML5的History API(通过History.js)来动态重写URL。我希望它们是以下格式:

http://www.example.com/example/article/page

其中'article'和'page'均由History API设置。

但是,这并没有按预期工作,因为History.js提供的pushStatereplaceState似乎只适用于最后一个斜杠之后的URL部分。< / p>

一个简单示例:如果我在http://www.example.com/example/并且pushState('Article-Title/1'),则网址变为http://www.example.com/example/Article-Title/1。现在我可以使用pushState('2')更改页码,但我无法更改Article-Title部分,这就是我所追求的。 Ben Lupton example中使用的window.location.href可以更改网址,但也会导致“硬”重定向。

我认为这种约束是为了防止XSS;然而,它让我很烦恼。有合理的方法吗?

2 个答案:

答案 0 :(得分:3)

找到它:我正在推送的URL必须以正斜杠开头。这就是全部。

答案 1 :(得分:0)

您还可以使用相对网址:../../Another-Section/1