GitHub如何在不重新加载页面的情况下更改URL?

时间:2011-09-29 00:09:42

标签: jquery html ajax github

转到任何GitHub page并单击任何目录/文件,观察URL的更改方式,但只更新页面的一部分。没有整页重新加载。

如何使用jQuery做类似的事情?

这适用于大多数浏览器(我使用的是Chrome)吗?

2 个答案:

答案 0 :(得分:30)

他们使用history API,或具体地,history.pushState()

你可以使用它,jQuery不是必需的,但有一些插件,如history.js

适用于大多数浏览器,即Chrome,Safari和Firefox。 IE10及以上版本支持此功能。在较旧的IE中,您可以回退使用哈希(window.location.hash)。

GitHub also blogged about this

答案 1 :(得分:4)

Github使用PJAX (Ref)。你可能会看到jquery-pjax here。请注意,此功能并未涵盖所有浏览器的支持,有一些浏览器无法使用此功能。