【发布时间】:2017-03-07 17:12:49
【问题描述】:
我们在 Web 应用程序中使用了一些特殊字符,例如:example.com/foo#вап。
我们使用decodeURI(window.location.hash) 解析哈希(有时哈希包含未编码的特殊字符)并设置新值,如window.location.hash = "вап"。
在 Chrome、Firefox、Opera 甚至 IE 中一切正常,但在 Safari 中我们得到 20? 而不是 вап。
如果在 Safari 中像 window.location.hash = encodeURI("вап"); 这样设置哈希值,它可以工作,但当然它在 Chrome、FF 等中不起作用。
【问题讨论】:
-
我在 iOS-6.1.6 (iPod) 和 iOS-7.1.1 (iPad) 上的 Mobile Safari 中也看到了同样的异常行为。
标签: safari uri special-characters