阿贾克斯内存泄漏(ajax memory leak)

2019-10-19 07:34发布

我使用ASP.NET AJAX和jQuery的组合,在IE和Firefox经历一个缓慢的内存泄漏。 我的情况非常相似,这里所描述的一个: 防止AJAX内存泄漏 ,但使用jQuery和asp.net AJAX,不是protyotype:我有一个网页在使用计时器每60秒刷新一个UpdatePanel显示数据。 在AJAX的JavaScript页面加载函数被调用每个“局部回传”,我重新绑定事件,因为它们在asp.net局部回传丢失:

function pageLoad(sender, args) {
    $("#item").unbind();
    $("#item").hover(
        function() {
            // do something
        },
        function() {
            // do something
        });
}

所以,这是每60秒调用。 就凭这一点可能是内存泄漏的原因是什么?

Answer 1:

做到这一点,而不是:

$(function() { //.ready shortcut...
  $("#item").live("hover",
    function() {
        // do something
    },
    function() {
        // do something
    });
 });

请注意,这需要的jQuery 1.4.1 ,但行为在内存方面完全不同。 其附加到整个DOM留意事件气泡 ,而不是在连接新的事件对每个对象your're每60秒插入。



Answer 2:

是的,它可能是。

尝试的第一件事是采取定义有两个功能(如果可能),并放置在一个较高水平,使他们只定义一次。



文章来源: ajax memory leak