阻止Opera在Back按钮上从缓存中获取页面或强制缓存AJAX

时间:2011-06-14 07:11:00

标签: jquery browser cross-browser opera

我遇到了两个可能的解决方案的问题。

  1. 如何强制Opera在jQuery中缓存.ajax调用?
  2. 如果用户通过单击“返回”按钮到达页面,我如何强制Opera浏览器重新加载页面?
  3. 测试场景:打开页面,浏览任何链接,然后通过后退按钮返回页面。页面是从缓存中获取的。

    我已经阅读了几篇文章(也在StackOverflow上)并且它们都没有工作: 1)缓存HTTP标头 - 忽略 2)元标记 - 忽略 3)使用js onunload事件和标志变量的解决方案 - 不起作用

    还有其他建议吗?

1 个答案:

答案 0 :(得分:0)

是POST还是GET?

此处类似的问题:http://my.opera.com/community/forums/topic.dml?id=435111

  

为什么使用GET方法的Ajax请求无法在Opera中缓存?   请看这个小测试:

     

http://www.karapuz.by/media/js/ajax-GET-caching-test.html

     

似乎Opera(我的是10.10),与IE,FF,GC和   Safari,即使是明确的,也不会缓存ajax响应   告诉我这样做。有什么想法吗?

答案是:

  

现在看来问题出现在jQuery库中。

     

我做了另一个测试   http://www.karapuz.by/media/js/ajax-GET-caching-test2.html,它使用   更低级别的XHR对象,而不是jQuery的“ajax”   第一次测试。现在Opera很好!