日期:2014-05-17  浏览次数:20572 次

浏览器缓存问题
问题1)对与同一个网站,每个网页头部都有,
      <script src="Scripts/jquery-1.8.0.min.js" type="text/javascript"></script>
      打开每个网页浏览器都回去获取一下js文件?
问题2)对于同一个完整,使用iframe框架,iframe中网页都有      <script src="Scripts/jquery-        1.8.0.min.js" type="text/javascript"></script>
      这样的语句,浏览器会帮我使用缓存吗?
       也即是说,我打开a.aspx,语句下载了 jquery 
      再打开b.apsx,浏览器会不会发现jquery已经存在而不去获取了?
 


------解决方案--------------------
1:是的
2:不是
------解决方案--------------------
LZ可以用firebug跟踪下  看看b.aspx加载jquery的时候用的时间长短呢
------解决方案--------------------
两个都是一样的,浏览器都会缓存,你可以用chrome+F12测试一下,比如我做的这个网站:http://www.wq126.com ,你打开每个页面都有jquery-1.8.1.js,chrome的开发者工具信息中会显示:Status Code:200 OK (from cache),就是从缓存中获取,不需要重新下载,当然缓存的实现方式不同的浏览器不同,但主流浏览器都差不多。
------解决方案--------------------
1. "  打开每个网页浏览器都回去获取一下js文件?"
是的,但是第一次跟后续获取.js的方式不一样.
在第一次访问,并且缓存中不存在时,会从服务器下载一次缓存起来.后续获取.js时,只要该缓存未过期,或者你未手动清理,那么会去缓存中获取.

2."再打开b.apsx,浏览器会不会发现jquery已经存在而不去获取了?"
还是会获取,不获取怎么运行?只是如问题一中说明,是去缓存中获取.