IE9中的内存泄漏

时间:2013-02-14 07:09:57

标签: javascript jquery internet-explorer-9 signalr

我似乎在IE9中有内存泄漏。它在Chrome中运行得很好。内存泄漏在客户端计算机上。我把这个页面打开了几天镀铬并且没有泄漏。

使用jquery 1.9.0,signalr rc2

此页面使用signalr并使用来自服务器的内容每5秒刷新一次内容。

我有四个标签/ div来执行此操作。

proxy.on('newRequests', function (data, updatetime) {
    newrequestupdatetime.text('Last updated: ' + updatetime);
    numberofnewrequests.text('Number of cases found: ' + data.length);
    numberofnewrequeststab.text('(' + data.length + ')');
    var h = '';
    $.each(data, function (i, val) { h += '<li><a href="/requests/' + val.Ref + '">' + val.Ref + '</a> ' + val.Type + '</li>'; });
    newrequests.html(h);
});

newrequests是我初始化的页面上的ul

var newrequests = $('#newrequests');

in

$(function () {});

不确定原因是什么。

通过这样做,我可以做得更糟。

    newrequests.empty();
    $.each(data, function (i, val) { newrequests.append('<li><a href="/requests/' + val.Ref + '">' + val.Ref + '</a> ' + val.Type + '</li>'); });

1 个答案:

答案 0 :(得分:2)

我猜它与最后一行代码有关,它将新的html放在ul标签内。 尝试将该行更改为此(旧代码):

document.getElementById('newrequests').innerHTML = h;

另请参阅:jQuery - Internet Explorer memory leaks