系统使用Google Map V2版本的API,在用户放大、缩小、移动操作时,系统会同时在地图的右边区域显示范围内前10的网点,产品数据以及相应logo。在IE7,8,9 Firefox3.6.17 Chrome 8下都没有问题,但是在IE6下面,操作几下后,浏览器会突然卡死(后来发现,卡一次10分钟,IE6 浏览器请求等待时间)
开发环境问题重现不了,开启IE调试(Script Debugger)后,也没有发现脚本错误,同时脚本中变量符合预期,问题卡住,后来想起来以前使用过的Http Watcher(Fiddler类似)工具,通过查看浏览器发出的请求后分析,问题解决
使用httpwatcher监控IE6浏览器的请求,浏览器卡死时,浏览器会同时发出1个Ajax请求和一个错误的图片资源请求(根域名),10分钟后,请求失败结束。原因:用户操作google map时,当区域范围内前10的网点中有没有logo的网点时,动态创建的图片<img src='#' class='cls'></img>在IE6会发出1个根域名的资源请求,当新的Ajax请求和图片请求同时发生时,浏览器会卡死10分钟。
把动态创建时的src='#'移除后,避免了这种情况,问题解决