IE内存泄漏和使用jQuery的eval [英] IE memory leak and eval with jQuery
本文介绍了IE内存泄漏和使用jQuery的eval的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我创建了一个页面,需要根据数据库中的数据更新其元素。我想知道你对使用eval的这种方法有什么看法,我知道它有风险,但在我看来这是最快的方法。
I've created a page which needs to have its elements updated according what's happening with the data in our database. I'd like to know what do you think about this approach using eval, I know it's risky but in my case it was the fastest way.
$('.updatable').each(function () {
var data;
data = 'ViewObjectId=' + $(this).attr('objectid');
$.ajax({
async: true,
url: '/Ajax/GetUpdatedViewObjectDataHandler.ashx',
data: data,
type: 'POST',
timeout: 10000,
success: function (data) {
$.each(data, function (index, value) {
eval(value);
});
}
});
现在我遇到的问题是页面加载时,页面每10秒更新一次,直到这里完美。
每轮更新后,我的Internet Explorer会窃取一些内存,并在几小时后获得整个机器内存,非常棒。
在这种情况下你会做什么?其他一些更新认可建议使用什么?或者甚至,你认为我能做些什么来避免这种内存泄漏?
推荐答案
在这里找到答案:简单的jQuery Ajax调用泄漏Internet Explorer中的内存
解决方案:
var request = $.ajax({ .... });
request.onreadystatechange = null;
request.abort = null;
request = null;
JQuery没有这样做,内存永远不会释放。
JQuery doesn't do that and the memory never releases.
jQuery版本1.4.2。
jQuery version 1.4.2.
现在它就像魅力一样。
这篇关于IE内存泄漏和使用jQuery的eval的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文