iframe是否缓存页面探究

最近手里有个项目需要用iframe来调用每天都会变化的页面,后来想到iframe会不会缓存页面呢,于是写了个demo论证了下,结果如下:

  1. iframe的src如果是静态页面,就有可能会缓存,因为静态页面有200和304状态
  2. iframe的src如果是动态页面就不会缓存,因为动态页面的都是200状态
  3. iframe的src为伪静态页面的话,需要分析伪静态页面会不会有304状态,有的话也会缓存

希望对遇到同样问题的童鞋有帮助。

iframe是否缓存页面探究

时间: 2024-10-06 05:59:11

iframe是否缓存页面探究的相关文章

页面嵌套 Iframe 产生缓存导致页面数据不刷新问题

最近遇到个比较古怪的问题:当页面嵌套多个 Iframe 时会出现 Iframe 里包含的页面无法看到最新的页面信息. 初步解决方案,在 Iframe 指向的页面地址后缀添加一个随机数或者时间戳.这样能确保每次在加载页面时,让浏览器知道它是最新的页面.说白了就是欺骗下浏览器,躲过缓存的灾难.(这是从 Stack Overflow 和 CSDN 上找到一个看似可行,能彻底治根的办法. ) Sample Code: 通过 JS 产生随机数,把数据数当成参数传给页面地址 <script type="

不使用iframe引入其他页面的方法

不使用iframe引入其他页面的方法:大家知道iframe可以引入外部页面,这个自然很简单,这里就不多介绍了,其实还有一种其他的方式可以引入其他页面,废话不多说,直接看代码: <script type="text/javascript"> $(document).ready(function(){ $("#content").load("iframe.html"); }); </script> </head>

如何禁止使用框架iframe引用网站页面

如何禁止使用框架iframe引用网站页面:很多网站喜欢引用外站的页面,有的可能为了方便,有的可能喜欢对方网站,目的可能是多种多样的,但是有些站长并不像自己的网页被别人引用,下面就简单介绍一下如何实现此功能.方法一: if(top.location!==self.location){ top.location=self.location; } 只要在js中加上这句代码就可以解决此问题,代码比较简单这里就不多介绍了.相关阅读:1.top属性window对象的top属性一章节. 2.location属

iframe调用父页面js函数 方法 元素

在一个页面中添加iframe,但是有时需要与父页面进行通信,传递参数. 网上总结有以下方法: 一.iframe标签中   src属性传参 <iframe src="test.jsp?id=xxx">    通过get方法,添加在页面后面传递参数,如上的“id” 二.iframe调用父页面html元素 在iframe中,通过“window.parent.document.getElementById()” ,即可访问父页面中的元素 三.iframe调用父页面函数  windo

判断iframe里的页面加载完成

//判断iframe是否加载完成,RMid为iframe的ID document.getElementById("RMid").onload = function () { alert("加载完成"); } //在父框架操作iframe页面里的AddReceipt2方法 window.frames["RMid"].AddReceipt2(); 判断iframe里的页面加载完成,布布扣,bubuko.com

关于ViewPager的适配器之——pagerAdapter加载缓存页面的机制

ViewPager有很多的适配器,如pagerAdapter,FragmentPagerAdapter等, 今天我想重点谈的是关于pagerAdapter加载缓存页面的机制的问题. 首先,使用pagerAdapter一般需要重写它的四个未实现的方法分别是: 1.  getCount(){} //得到总数 2.    //实例化页面,  相当于BaseAdapter等适配器中的 getView()方法 返回想要显示的对象(内容) // 不同之处是:这里需要把这些对象(内容)一一添加到adapter

在iframe下的页面锚点失效问题,用jquery进行修复

应用场景是:iframe页面没有滚动条,在父窗体中出现滚动条,锚点标记就会失效,因为,锚点是根据当前窗口滚动条滚动窗口的,成为子窗体后没有了滚动条,自然不会滚动. 解决办法是:用js判断页面是否被嵌套,用js计算iframe在父窗体位置,锚点在firame中的位置,两者相加成为父窗体的滚动. 遇到问题:获取父窗体元素(因为有域限制,所有需要在网络环境下方位(即http://domain.com)):父窗体嵌套多个iframe,判断是否是当前iframe页面. 代码: 父窗体页面 index.ht

使用Donut Caching和Donut Hole Caching在ASP.NET MVC应用中缓存页面

Donut Caching是缓存除了部分内容以外的整个页面的最好的方式,在它出现之前,我们使用"输出缓存"来缓存整个页面. 何时使用Donut Caching 假设你有一个应用程序中有像"主页"这种页面,它除了用户登录的用户名以外总是给用户呈现相同的或者很少变化的内容.这时你可能需要缓存大部分的内容.加入你使用"输出缓存"并应用一个VaryByParam UserID来做缓存处理,那么整个页面会为每个访问用户生成缓存,但是这当我们有很大量的登陆用

window.print()打印页面指定内容(使用iframe保证原页面不失效)

使用window.print()时会出现两个问题: (1)直接使用window.print() 打印的是整页内容-->无法实现打印指定区域 (2)打印时替换body中的内容,打印完成后再替换回来-->这样会导致原来页面事件失效 使用iframe即可打印指定内容,也可保证页面不失效,具体方法如下: 1.将打印的内容独立出来为一个print.html文件,并为页面添加打印事件 <!DOCTYPE html> <html> <head> ... </head