打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
引用 诡异的IE6环境JS加载不执行问题
今天也遇到这个问题,郁闷

引用

段玉诡异的IE6环境JS加载不执行问题
 最近遇到一个狂郁闷的问题, 在firefox和IE7环境下是OK的, 而在IE6环境下80%以上概率死活不行。问题描述如下:
 在页面b.html中存在如下
<script type="text/javascript"  src="b.do"  ></script>

其中b.do返回的http header如下:
HTTP/1.1 200 OK
Server: nginx/0.6.34
Date: Fri, 27 Feb 2009 02:59:41 GMT
Content-Type: text/html;charset=GBK
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Expires: Fri, 27 Feb 1970 02:59:41 GMT
Vary: Accept-Encoding
Content-Encoding: gzip

直接在地址栏输入b.html或者刷新b.html, b.do这个js 都是可以正常加载并执行的

而现在的情况是在 a.html中点击一个链接当前页面刷新为b.html,这个时候b.do可以加载,但是不执行了。

解决问题思路如下:
1. b.do返回的是header中content-type是:text/html改为
Content-Type: text/javascript;charset=GBK 或者Content-Type: application/x-javascript;charset=GBK
  not work

2. 放一个b.js文件,返回header如下:
HTTP/1.1 200 OK
Server: nginx/0.6.34
Date: Fri, 27 Feb 2009 02:50:39 GMT
Content-Type: application/x-javascript
Last-Modified: Fri, 13 Feb 2009 09:22:41 GMT
Transfer-Encoding: chunked
Connection: keep-alive
Expires: Fri, 06 Mar 2009 02:50:39 GMT
Cache-Control: max-age=604800
Content-Encoding: gzip

这个可以正常加载并执行,那是啥问题呢, 要比较这两个header的区别了。
与小蔡和ce一起分析, 应该gzip和Cache-Control、Expires的区别。

3. 将Expires header去掉, not works
4.将gzip压缩去掉, it works
   这个需要修改服务器的配置,比较麻烦
5. 去除Cache-Control header或者设置Cache-Control为空, it works
   不过这个存在问题,因为b.do是个动态请求不能被缓存的, 萎缩的做法是: b.do?1232
加个随机数吧。

http://www.akmattie.net/blog/2007/11/10/javascript-frames-ie-6-gzip-no-cache-header-trouble/
" and it seems that they no longer gzip the response when serving up their www.google.com/jsapi application."
:)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
备查:ie6下动态加载js数据不执行的诡异问题
nginx中的gzip乱码问题
原创-开启tomcat6的gzip压缩 - tda7088的日志 - 网易博客
[转]HTTP 头参考
关于JavaScript的gzip静态压缩方法
http头详解
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服