用的是mootools提供的JSONP工具,其他类库的是一样的,不过会不会引起IE6的crash没有测试。
现象是这样的,在IE6环境有JSONP请求的情况下,刷新页面(浏览器或者F5 CTRL+F5),则第二次请求IE必定崩溃。
经排查,问题在于请求完成后,清理script标签.
流程如下:
var script = document.createElment('script');
script.src = "xxx?callback=call";
...
document.head.appendChild(script);
服务器返回的script执行回调:
call : function(){
...
script.parentNode.removeChild('script');//执行完后浏览器必定崩了,fuck!
}
修改了成如下就好了:
call : function(){
...
seltTimeout(function(){script.parentNode.removeChild('script');},10);//莫名其妙,fuck!
}
没有测试其他库有没有这问题,搜索了一下貌似没有。。。。。