小编典典

如何在不重新加载页面的情况下更改浏览器地址栏-HTML / Javascript

ajax

嗨伙计,

我注意到,Github.com不会在浏览存储库时强制用户下载网页,而是使用AJAX来刷新页面内容。

Github还将浏览器地址栏更改为代表内容的真实地址。我不知道如果不通过在URL中使用#标签来实现这一点。


简而言之: github使用ajax加载新网页,而无需使用标签。他们如何做到这一点?


有任何想法吗?


阅读 299

收藏
2020-07-26

共1个答案

小编典典

通过使用:

window.history.pushState("string", "Title", "newUrl");

这是HTML 5中的新功能。

您的网址将更改为newUrl,而无需重新加载页面。

注意:方法中的title arg不会更改html页面的Title。这用于在浏览器历史记录中命名页面,以防您后退然后前进。

2020-07-26