在firefox中设置top.location.hash和%20

时间:2009-02-16 04:40:51

标签: javascript firefox hash swfaddress

在firefox中,使用这个javascript:

top.location.hash = "#here%20are%20spaces";

将浏览器网址更改为:

http://mysite.com/#here are spaces

我希望firefox在浏览器网址中将编码空格显示为%20。

  1. 这里发生了什么?为什么firefox没有在我通过它时将url设置为字符串?
  2. 如何强制firefox使用编码字符更新网址?
  3. 和...

    如果我添加设置网址

    top.location.hash = "#here%20are%20spaces%";
    

    它起作用(!?),尽管在末尾附加了额外的不需要的%。我不确定这是一个错误还是一个功能。关于如何进行的想法或参考?

4 个答案:

答案 0 :(得分:3)

为了便于阅读,

%20被替换为空格(在firefox 3中)。你不应该担心它。

答案 1 :(得分:2)

对于这个问题,它似乎仍然是一个活跃的Firefox Bug(虽然在Ubuntu中报告过Firefox,但在其他操作系统中也有报道)....

答案 2 :(得分:2)

Firefox会在位置栏中显示未编码的值,就像所有包含编码值的网址一样。尝试转到some url with special characters,然后剪切&将它粘贴到记事本/...

你有没有尝试过,无论如何都可以做到你想要的?

答案 3 :(得分:0)

这是一项安全预防措施。如果不存在,可以在地址栏中编码看起来像paypal.com字符串中的“a”的字符。