0

我很好奇为 URL 使用相对较新的 pushState 功能的最佳方式。

据我了解,通常使用十六进制“#”符号:

http://www.somewebsite.com/page.html#someoperation

但是,在 Safari 等浏览器中,不能使用两个“#”符号。如果您希望在 URL 中存储一些数据,这是一个问题。

http://www.somewebsite.com/page.html#someoperation#somedata=data

...因为它将第二个十六进制转换为“%23”。

我也明白某些字符是“保留的”,尽管我不确定这到底是什么意思,“#”就是其中之一。

4

1 回答 1

0

#分隔片段标识符,这就是浏览器可能拒绝接受该字符两次的原因。阅读RFC1738及其后续RFC3986以获取不安全和保留字符的完整列表,其中有很多。

于 2012-06-28T17:42:17.300 回答