【问题标题】:Change url with javascript without page refresh [duplicate]使用javascript更改url而不刷新页面[重复]
【发布时间】:2011-02-22 06:49:20
【问题描述】:

可能重复:
How to rewrite URL without refresh, like GitHub.com

大家好,

我有一个可以单击的 href 链接列表 (but1 - but4)。数据被预加载并存储为 JSON。当我点击一个链接时,我想更改 URL,例如 fakeURL.com -> fakeURL.com/but1

我知道这可以通过使用 window.location.hash 函数来完成,但我更喜欢直接修改 url。

github (https://github.com/apache/hadoop-common) 就是一个例子对我来说)

知道怎么做吗?

谢谢, djs22

编辑:我更喜欢比 html5 history.pushState 更强大的解决方案。

【问题讨论】:

标签: javascript url-rewriting


【解决方案1】:

无法更改网址。那将是一个巨大的安全漏洞。我在 github 上找不到任何 ajax,页面重新加载,并显示了一个新的 url。可以用 javascript 更改的 URL 的唯一部分是哈希部分。

【讨论】:

  • 你确定?看起来只有文件结构正在重新加载?有什么方法可以直接测试吗?
  • 您可以使用firebug(firefox插件)查看ajax-requests及其响应等。它清楚地表明在github浏览文件夹时没有ajax-requests。
  • @djs22: github 使用history.pushState(在支持它的浏览器中)。如果不想使用哈希,那么别无他法
  • @TheQ:您是否有机会使用 Firfox 3.6? ;)
  • 我确定。我想这不支持 history.pushState :)
猜你喜欢
  • 1970-01-01
  • 2020-06-20
  • 2012-05-02
  • 1970-01-01
  • 2016-05-25
  • 2019-10-14
  • 2011-04-08
  • 2010-12-26
  • 2019-04-05
相关资源
最近更新 更多