我绝对不是第一个遇到 jQuery 内存泄漏问题的人,但是我找不到我正在寻找的许多与我所看到的类似的问题的答案。
首先,泄漏位:
$(document).ready(function ivr_grabber(){
var xhr = $.ajax({
url: '/ivr/inprogress',
timeout: 3000,
success: function(data){
$('#open-ivrs').html(data);
data = null;
},
complete: function(){
setTimeout(ivr_grabber, 3000);
}
});
xhr = null;
});
PHP 代码返回一个表格,其中包含一些被我们的 PBX 呼叫的人。我已经注释掉了 .html(data) 行,它没有任何区别。我也删除了setTimeout,然后放回去,没有运气。我试图取消设置可能导致此泄漏的所有值,但我无法弄清楚它来自哪里。
它似乎以每个 ajax 调用约 5 KB 的速率泄漏。有什么想法吗?
在 Chrome 上使用 jQuery 1.7.2
我一直在拍摄堆快照,以上都没有影响泄漏