路由跳转

2021-06-07  本文已影响0人  1只猫上树

History.pushState()

pushState() 和window.location = "#foo"基本上一样, 他们都会在当前的document中创建和激活一个新的历史记录。但是pushState() 有以下优势:

新的URL可以是任何和当前URL同源的URL。但是设置window.location 只会在你只设置锚的时候才会使当前的URL。

非强制修改URL。相反,设置window.location = "#foo";仅仅会在锚的值不是#foo情况下创建一条新的历史记录。

可以在新的历史记录中关联任何数据。window.location = "#foo"形式的操作,你只可以将所需数据写入锚的字符串中。

注意:pushState() 不会造成 hashchange (en-US) 事件调用, 即使新的URL和之前的URL只是锚的数据不同。

上一篇下一篇

猜你喜欢

热点阅读