ipad有多个困难#

时间:2011-08-26 11:11:17

标签: jquery ipad url-encoding

我有一个看起来像这样的网址

http://www.URL.com/photography.html#project

或者

http://www.URL.com/photography.html#img1

甚至是

http://www.URL.com/photography.html#project#img1

这适用于所有浏览器,但在iPad中,URL更改为如下所示

http://www.URL.com/photography.html#project%23img1

它不允许我的特定代码工作,如果设备是ipad,我可以编码第二种#不同的方式吗?如果我能帮助它,我真的不想开始为ipad重新编码。

任何想法都非常受欢迎。 谢谢!

1 个答案:

答案 0 :(得分:0)

我认为即使这个问题已经相当陈旧,我仍会深入研究这个问题。可能仍有人在讨论同一主题。


虽然多个片段标识符的使用不是explicitly illegal,但似乎使用多个片段标识符不符合规范,因为它声明:

  

fragment-id跟在整个对象的URL之后,用散列号(#)分隔它。

因此,您可以争辩应该只存在一个哈希符号。接受和解析此类型的多个字符的浏览器不能被依赖,因为它是未定义的行为。

相反,我建议你以你已经提到的不同形式建立你的片段标识符。

http://www.URL.com/photography.html#project/img1

在这种情况下,您可以使用简单的表达式来获取函数。

window.location.hash.split("/"); // yields ["project", "img1"]