如果我动态加载内容,history.pushState()是否会将该内容添加到浏览器缓存中?

时间:2013-09-16 15:42:06

标签: html5 browser browser-history pushstate

以下是发生的事情:

  1. 页面加载(时间轴视图)
  2. 用户向下滚动到底部
  3. 通过AJAX加载更多时间轴内容
  4. 使用history.pushState()将URL设置为新值。如果直接访问此URL,它会加载时间轴,使其包含到目前为止动态加载的所有内容。
  5. 用户点击时间轴中的链接
  6. 然后用户点击浏览器中的后退按钮。
  7. 我的问题:当按下后退按钮时,浏览器会重新加载通过pushState()提供的网址(如果它们在时间轴上走了很长一段路,可能会导致大的性能损失)?我希望,当调用pushState()以包含添加了动态内容的DOM时,它将以某种方式更新其页面缓存,然后重新加载它。

    如果它不像那样做任何自动缓存魔术,有没有办法让它这样做以提高性能?每次用户点击时间线时重新加载大量帖子似乎很浪费。此外,当它们滚动时,URL会不断更新,因此每次点击时都会重新加载所有帖子,甚至不使用普通的浏览器缓存。

    我一直在查找信息,但似乎无法找到任何说明pushState()如何修改缓存的内容(如果有的话)。

0 个答案:

没有答案