javascript – Chrome返回按钮:仅提供初始页面的缓存版本,没有任何Ajaxed内容

前端之家收集整理的这篇文章主要介绍了javascript – Chrome返回按钮:仅提供初始页面的缓存版本,没有任何Ajaxed内容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两页A和B.流程如下:

>转到A
> javascript Ajaxes一堆内容添加到A,形成A’
>去B
>按[返回]返回A,而不是A’,而不需要所有的Ajaxed内容

有没有人注意到这一点,如果是这样,你如何解决

如果Chrome在进入B之前缓存A状态,并且在后面再现A’,那将是可以接受的.如果Chrome只是将A的整体重新加载(包括将其转换为A’的Ajax请求)也是如此.目前的行为,正在加载一个旧的,不完整的版本的A,不是我想要的.

编辑:我知道它正在加载一个缓存的版本,因为服务器没有收到任何新的请求,当我打[返回].

解决方法

这个话题很旧,但以为我会分享我的解决方案.要使Firefox,Chrome和Safari的行为一致,您必须在页面上设置一个卸载处理程序,需要在返回时重新加载,还可以使用缓存清除头.

在HTTP头中

缓存控制:必须重新生效,无存储,无缓存,私有

并在javascript的页面

$(window).unload(function(){}); // Does nothing but break the bfcache

阅读更多信息:http://madhatted.com/2013/6/16/you-do-not-understand-browser-history

原文链接:https://www.f2er.com/ajax/152224.html

猜你在找的Ajax相关文章