JS清除IE浏览器缓存的方法

 我来答
户如乐9318
2022-11-01 · TA获得超过6666个赞
知道小有建树答主
回答量:2559
采纳率:100%
帮助的人:140万
展开全部
本文为大家详细介绍下js中自动清除ie缓存的几种方法 大家可以根据自己的需求自由选择适合自己的 希望对大家学习js有所帮助  

   js中自动清除ie缓存方法 — 常用 对于动态文件 比如 index asp?id= 或者 index aspx?id= 相信有经验的程序员都知道怎样禁止浏览器缓存数据了 但是对于静态文件(css jpg gif等等) 在什么场合下面我们需要禁止浏览器缓存他们 怎么做? 方法一 Dojo中我们可以用简单的方法完成 在dojo xhrGet(包括post)等方法中都包含preventCache属性 此属性的含义 “默认为启用浏览器缓存 否则将通过自动增加不同的参数来确保浏览器缓存失效” 我们只要把此属性赋值为 “true”即可 方法二 document write(" 其中 ver= 的 就是版本号 一般都是采用 CVS 或其他工具生成的开发版本号 这样真正做到了应该缓存的时候缓存静态文件 当版本有更新的时候从获取最新的版本 并更新缓存 对于图像 来有效利用和更新缓存 js清除浏览器缓存 二 为 了减小浏览器与服务器之间网络传输压力 往往对静态文件 如js css 修饰的图片做cache 也就是给这些文件的HTTP响应头加入 Expires和Cache Control参数 并指定缓存时间 这样一定时间内浏览器就不会给服务器发出任何的HTTP请求(除了强制刷新) 即使在 这段时间内服务器的js或css或图片文件已经更新多次 但浏览器的数据依然是原来最能初cache的旧数据 有没有办法让浏览器拿到已经修改后的最新数 据呢? 有 方法是用ajax请求服务器最新文件 并加上请求头If Modified Since和Cache Control 如下:

复制代码 代码如下: $ ajax({ type: "GET" url: "static/cache js" dataType: "text" beforeSend :function(xmlHttp){ xmlHttp setRequestHeader("If Modified Since" " "); xmlHttp setRequestHeader("Cache Control" "no cache"); } });

   这里用了jquery 这样浏览器就会把最新的文件替换掉本地旧文件 当然 这里还一个问题就是js必须知道服务器更新了那个js css 图片 利用cookie和时间版本应该可以解决 jquery自从 开始就有ifModified和cache参数了 不用自己加header ifModified Boolean Default: false Allow the request to be successful only if the response has changed since the last request This is done by checking the Last Modified header Default value is false ignoring the header cache Boolean Default: true Added in jQuery if set to false it will force the pages that you request to not be cached by the browser

复制代码 代码如下: lishixinzhi/Article/program/Java/JSP/201311/20378

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式