gpt4 book ai didi

javascript - "history.pushState"是否改变了网页内容?

转载 作者:行者123 更新时间:2023-12-02 16:33:26 24 4
gpt4 key购买 nike

我是一个初学者,希望有人帮助我理解这些问题,谢谢~

对于像 youtube.com 这样的网页,它使用 ajax + 历史记录:

  1. “pushState”会重新加载页面吗?

  2. 如果我在这个网页中注入(inject)了一些java脚本,我注入(inject)的DOM元素会被删除或替换吗?这什么时候会发生?

  3. 如果发生这种情况,如何重新注入(inject) DOM 元素使其显示,或者如何防止 DOM 元素被删除...?

最佳答案

does a "pushState" reload the page

没有。它会更改 URL 并在历史记录中存储一些数据(您将其作为参数传递给它)。它根本不会改变页面。

当您编写其他更改页面状态的代码时,您应该使用pushState。 (您应该更改页面的状态,使其与通过传递给 pushState 的 URL 新鲜加载页面相同)。

然后,当您收到 popState 事件时,您需要将页面的状态更改回之前的状态(使用存储的数据)。

关于javascript - "history.pushState"是否改变了网页内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28115839/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com