最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JQuery1.4+ Ajax IE8 內(nèi)存泄漏問題

 更新時(shí)間:2010年10月15日 18:18:42   作者:  
將JQuery1.2.6升級(jí)到JQuery1.4,有幾天下班沒有關(guān)閉ajax輪詢網(wǎng)頁(yè),第二天早上來,內(nèi)存耗盡,發(fā)現(xiàn)此內(nèi)存泄漏在IE6上不存在(IE7未測(cè)試),IE8上存在
并且JQuery1.3.2版本不存在,JQuery1.4+版本存在
通過對(duì)比,最終找到這兩個(gè)版本的其中一個(gè)差別
JQuery1.4+在ajax方法增加了一段代碼,用于在abort時(shí)調(diào)用onreadystatechange方法
復(fù)制代碼 代碼如下:

try {
var oldAbort = xhr.abort;
xhr.abort = function() {
if ( xhr ) {
oldAbort.call( xhr );
}
onreadystatechange();
};
} catch(e) { }


經(jīng)查,正是此段賦值產(chǎn)生了錯(cuò)誤
onreadystatechange的readyState為4,即成功時(shí),將xhr.abort銷毀
內(nèi)存泄漏解決
另:如果直接xhr.abort=null,不知道為什么在IE6下會(huì)報(bào)錯(cuò)
只好try…catch一下,反正IE6不修正錯(cuò)誤與不會(huì)有問題

此項(xiàng)問題在IE8中有問題的原因不明
可能是xhr.abort與oldAbort產(chǎn)生了一個(gè)閉包?
但為什么IE6不泄漏?

相關(guān)文章

最新評(píng)論

湄潭县| 海口市| 宿迁市| 诏安县| 乐平市| 乌拉特中旗| 富蕴县| 甘肃省| 水富县| 中江县| 盐山县| 肥城市| 安新县| 巫山县| 南京市| 左贡县| 清水河县| 丹巴县| 香港 | 定襄县| 正蓝旗| 麻城市| 文山县| 西吉县| 社会| 大竹县| 温宿县| 葫芦岛市| 泗洪县| 寻乌县| 缙云县| 九江县| 南安市| 高青县| 衡阳市| 察雅县| 怀集县| 龙门县| 连江县| 铜山县| 衡水市|