联系我们
简单又实用的WordPress网站制作教学
当前位置:网站首页 > 网页前端技术 > 正文

JQuery1.4+ Ajax IE8 内存泄漏问题 - Web前端

作者:98wpeu发布时间:2026-06-15分类:网页前端技术浏览:3


导读:并且JQuery1.3.2版本不存在,jQuery1.4+版本存在通过对比,最终找到这两个版本的其中一个差别jquery1.4+在Ajax方法增加了一段代码,用于在abort时...
并且JQuery1.3.2版本不存在,jQuery1.4+版本存在
通过对比,最终找到这两个版本的其中一个差别
jquery1.4+在Ajax方法增加了一段代码,用于在abort时调用onreadystatechange方法
复制代码 代码如下:
try {
var oldAbort = xhr.abort;
xhr.abort = function() {
if ( xhr ) {
oldAbort.call( xhr );
}
onreadystatechange();
};
} catch(e) { }


经查,正是此段赋值产生了错误
onreadystatechange的readyState为4,即成功时,将xhr.abort销毁
内存泄漏解决
另:如果直接xhr.abort=null,不知道为什么在IE6下会报错
只好try…catch一下,反正ie6不修正错误与不会有问题

此项问题在ie8中有问题的原因不明
可能是xhr.abort与oldAbort产生了一个闭包?
但为什么IE6不泄漏?

标签:内存WebIE8AjaxJQuery1


网页前端技术排行
最近发表
网站分类
标签列表