在我们的项目中往往少不了广告的成分,有的时候我们为了方便修改一般会选择iframe嵌套进来的方法,开始的时候没怎么留意,一般自己换广告也是强制刷新,直到后来看广告统计的ip发现好多广告都下架了半个月了可是居然还有点击,才注意到了这一块,那就是浏览器为了加载速度会缓存iframe里面的内容,而好多客户是根本不懂强制刷新的,那么我们就需要做一些操作不让缓存,我们一般会选择后面加上随机数的方法来做。

下面是网上普遍说的方法:

原文是这么说的:

不管是IE还是火狐浏览器,对于iframe 都是有缓存的,可能很多开发的朋友都没有注意,

包子在开发安徽商之都百万网友秒杀盛宴活动

秒杀专题的时候就遇到类似的状况,即使你的iframe地址是php动态页面也都会出现浏览器缓存,

一开始,我以为只要在php的页面使用header禁止缓存就OK了,但是貌似不行。。额。。

我们先来看下,火狐下解决Iframe框架的页面缓存的方法,

从国外的一个博客上看到的一个方法,原文如下:

Hi

I have a page that contains an iframe. The contents of the iframe are created dynamically,

so every time I come to the page containing this iframe I want to force the iframe to refresh. I added these meta tags to the iframe’s head:

and I also add a different random number to the iframe src each time:

It works in Firefox, but in IE6 it still caches the old page.

http://lab.wehefei.com

额。意思你明白不???嘿嘿,还好,我的计算机英语非常过关,哈哈。,。,。。我不就翻译了。,

很简单的,火狐 中 Iframe框架的页面缓存的方法方法两个:

1、使用上面的meta头信息,当然如果使用php动态页面,你最好也发送header头信息,禁止下缓存

2、添加一个随机数。在html的后面。呵呵

下面。我们来看下,IE中解决iFrame缓存问题的方法有两种:

(1) 每次主页面刷新时随机更换iframe的name;

(2) 每次主页面刷新时在iframe的src路径页面赋予一个随机get参数,例如:

document.frames["aframe"].location.href += (document.frames["aframe"].location.href.indexOf(“?”) != -1 ? “?” : “&”) + (new Date()).getTime();

但是呢,我觉得他这种方法过于麻烦,需要区分IE和谷歌然后分别来写相应的实现方式。

下面来说一种不需要区分就能没有缓存的方法:

这种方法经测试有效,也不需要区分浏览器,ok,希望可以帮到大家,如果有其他更简单的方法也可以发布上来。

谷歌浏览器iframe兼容问题_兼容解决 IE 、火狐、谷歌浏览器中 Iframe框架的页面缓存的方法...相关推荐

  1. sql查询禁用缓存_如何在SQL Server 2017中启用和禁用身份缓存

    sql查询禁用缓存 Every data warehouse developer is likely to appreciate the significance of having surrogat ...

  2. python random.choice报错_如何解决mtrand.RandomState.choice中的内存错误...

    我试图从1e5字符串中抽取1e7个项目,但是出现内存错误.从1e4字符串中抽取1e6项是很好的.我在64位机器上使用4GB RAM,并且不认为我应该在1e7达到任何内存限制.有任何想法吗? $pyth ...

  3. iptables删除所有规则_如何解决iptables删除命令中遇到的问题

    最近在做一个V*P*N中间件的配置工作,在配置iptables的时候,当用户想删除EIP(即释放当前连接),发现使用iptables的相关命令会提示错误. iptables: Bad rule (do ...

  4. Java实时报表统计查询慢_如何解决报表关联计算中的性能问题

    报表开发过程中经常要在报表中完成数据关联计算,有时为了降低报表制作复杂度,会将关联关系放到可视的报表模板中完成:而有时则必须在报表中完成关联,如多数据源.异构数据源的情况.在报表中做关联往往导致报表效 ...

  5. python中类似对象吗_确定对象是否为Python中类似字节的对象的正确方法是什么?...

    除非您知道我们不了解的内容,否则此代码是不正确的: if isinstance(data, bytes): data = data.decode() 您(似乎)不知道27007050676610010 ...

  6. Linux学习笔记(二) -- Linux学习笔记(二) – 解决VMware主窗口中的虚拟机窗口太小的方法

    1.问题描述 在虚拟机中安装完ubuntu操作系统后,我们会发现ubuntu界面在主窗口中占比很小,如下图所示: 这给操作带来了极大的不便. 2.解决步骤 1.在VMware中启动ubuntu系统: ...

  7. java查找第k大的数字_[经典算法题]寻找数组中第K大的数的方法总结

    今天看算法分析是,看到一个这样的问题,就是在一堆数据中查找到第k个大的值. 名称是:设计一组N个数,确定其中第k个最大值,这是一个选择问题,当然,解决这个问题的方法很多,本人在网上搜索了一番,查找到以 ...

  8. 直接访问静态图片_详解nginx和tomcat访问图片和静态页面的配置方法

    概述 生产环境下,有时候需要访问图片,正常需要应用ftp.nginx等配套使用,但是有时候为了简化,可以用以下的两种简单的访问,说实话,就是为了偷懒,但是效果是能有的,这就行了,所以今天做这个简化版的 ...

  9. java逐行读取文件数组_快速高效地在Java中逐行读取大型JSON文件的方法

    您可以使用 JSON Processing API (JSR 353)以流式方式处理数据: import javax.json.Json; import javax.json.stream.JsonP ...

最新文章

  1. EF-Linq将查询结果转换为Liststring
  2. 保持dropdownlist选中值
  3. Spring MVC 过时了吗?
  4. 嵌入式Linux教程:安装VMware Tools VMware Tools显示灰色解决方法
  5. 百度地图,加载顺序异步问题,用定时器解决
  6. Istio 网关中的 Gateway 和 VirtualService 配置深度解析
  7. 一文搞定Qt读写excel以及qt读写xml数据
  8. 使用Java的Apache Camel入门
  9. Nacos 集群集成SpringBoot2.x 微服务_02
  10. java中使用字符(字节)读取文本内容
  11. AVR PIC单片机视频教程
  12. HTTP Error 503错误
  13. PL2303在ARM Linux下驱动的问题及解决方法
  14. 基于Java编写的网络五子棋
  15. Google 屏蔽的关键字
  16. 慧荣SMI SM3255主控三星Flash芯片专用量产工具SM3255_J0324
  17. gdfghdsdhht
  18. 淘宝电商用户行为数据分析及可视化—基于MySQL/Power BI(含代码)
  19. SG186电力营销业务应用ORACLE数据库复制软件招标公告
  20. 信号级---脉冲多普勒雷达建模与仿真

热门文章

  1. 使用Ab命令对Apache服务器进行负载压力测试
  2. KLWP 为安卓手机桌面添加 gif 动图
  3. c语言如何输出三角函数公式大全,用C语言打印出三角函数
  4. 基于Springboot的小区物业管理系统
  5. 位置不可用. 不知道怎样找回呢?
  6. android studio发邮件功能,Android发送电子邮件
  7. love2d之路(三)一个简易弹幕射击游戏示例(上)
  8. Linux页表 - - 启动过程临时页表创建过程
  9. 电子商务杨煜:利用IM工具进行产品营销活动设计
  10. 关联分析U聚类分析探讨心脏病的诱发