当我使用window.location打开带有特殊字符的url时,它似乎对特殊字符进行百分比编码,然后打开URL。例如
var url = "http://gramfeed.com/instagram/tags/kühl";
window.location = url;
这将导致打开包含URL的页面:
http://gramfeed.com/instagram/tags/k%C3%BChl
而不是:
http://gramfeed.com/instagram/tags/kühl
如何在没有百分比编码字符的情况下正确打开网址
这是一个玩代码的jsfiddle: http://jsfiddle.net/krisrak/aSkMR/
答案 0 :(得分:3)
我不相信问题出在windows.location和你的JavaScript上。问题在于gramfeed.com如何解释标签。在您的代码中尝试此操作:
var url = "https://www.google.com/search?q=kühl"
window.location = url;
看到特殊字符保持未转换状态。
现在尝试直接在浏览器地址栏中输入http://gramfeed.com/instagram/tags/kühl
- 转换网址。