空IFRAME如何导致缓存破坏

时间:2014-11-11 00:08:43

标签: javascript iframe

在javascript库中找到以下行,用于搜索框中的预测文本。例如:如果你输入“红色”,列表会弹出“红色礼服,红色花朵,红色汽车等”

// Write the cache busting IFRAME
document.write('<iframe style="height:0px;width:0px;visibility:hidden;display:none;" src="about:blank">this prevents back forward cache</iframe>');

我看不到空iframe如何破坏缓存。我看到人们在随机缓存链接的末尾附加随机数字......但这个iFrame是什么呢。图书馆很大,所以我可以分享。很抱歉,如果这个代码不足以宣布答案。

1 个答案:

答案 0 :(得分:1)

这是Safari浏览器行为。来自Apple Developer docs:

  

Safari的后退/前进缓存(来自访问者时的缓存   按下后退或前进浏览器按钮)也可以被挫败   确保您的页面包含框架。基于框架的页面永远不会   存储在后退/前进缓存中,您可以确保您的非帧   通过在下面添加不可见的iframe,基于页面的行为类似。

source