Google地图如何在不重新加载和不使用历史记录API的情况下更改其网址?

时间:2015-07-28 17:52:34

标签: javascript google-maps

因此,如果您在Google地图(maps.google.com)上执行任何操作(例如搜索或点击某个地点等),则网址会发生变化,并且页面显然没有重新加载(可以从inspect元素/控制台告知)。我认为他们可能正在使用HTML5历史记录API,但似乎并非如此(无论URL更改多少次,window.history.currentState始终返回undefined)。

谷歌如何做到这一点?

过去的相关问题(如2010年)也提到了他们显然不再使用的标签方法(任何网址中的任何地方都没有主题标签)

1 个答案:

答案 0 :(得分:1)

所以我错了,他们实际上似乎确实使用了历史API。不确定为什么currentState总是返回undefined但如果我调用window.history.state你可以看到索引更改,如果你调用back()它会做你期望的。