Html 如果动态加载内容,history.pushState()是否会导致将该内容添加到浏览器缓存中?
下面是发生的情况:Html 如果动态加载内容,history.pushState()是否会导致将该内容添加到浏览器缓存中?,html,browser,browser-history,pushstate,Html,Browser,Browser History,Pushstate,下面是发生的情况: 页面加载(时间轴视图) 用户向下滚动到底部 更多时间线内容通过AJAX加载 URL被设置为具有history.pushState()的新值。如果直接访问此URL,它将加载时间线,以便它包含迄今为止动态加载的所有内容 用户单击时间轴中的链接 然后,用户单击浏览器中的“后退”按钮 我的问题:当按下“后退”按钮时,浏览器是否会重新加载通过pushState()提供的url(如果他们在时间线上走了很长的一段路,这可能会对性能造成很大影响)?我希望当调用pushState()以包含添加
我已经查找了相关信息,但似乎找不到任何说明pushState()如何修改缓存的信息。历史API只向历史添加条目,与缓存无关。当用户在历史记录中导航时,
popstate
事件会通知您,以便您可以恢复以前的视图。这可能意味着,您首先再次执行加载该内容的相同AJAX请求,这就是缓存可以进入的点:如果您明智地设置缓存(从服务器/HTTP角度),那么浏览器将很快实现(可能在快速执行条件GET请求之后),他已经缓存了那个资源,而且它仍然有效。@CBroe谢谢。这很有道理。