javascript - Ajax 内存泄漏

标签 javascript jquery ajax memory-leaks

我在结合使用 ASP.NET AJAX 和 jQuery 的 IE 和 Firefox 中遇到缓慢的内存泄漏。我的场景与此处描述的场景非常相似:Preventing AJAX memory leaks除了使用 jquery 和 asp.net AJAX,而不是原型(prototype):我有一个网页在 UpdatePanel 中显示数据,使用计时器每 60 秒刷新一次。在每次“部分回发”时调用的 AJAX javascript pageLoad 函数中,我重新绑定(bind)事件,因为它们在 asp.net 部分回发中丢失了:

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

因此每 60 秒调用一次。难道这就是内存泄漏的原因吗?

最佳答案

改为这样做:

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

注意,这个 requires jQuery 1.4.1 ,但在内存方面的行为完全不同。它附加到 entire DOM watching for the event to bubble而不是每 60 秒将一个新事件附加到您要插入的每个对象。

关于javascript - Ajax 内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2155792/

相关文章:

javascript - 从变量插入数据到json

JQuery 在 GET 请求后重新应用斑马条纹

javascript - 使用 jquery 检查输入字段的内容

javascript - 在 Bootstrap 导航栏中添加时显示动态添加的导航链接

javascript - 一旦检索到所有数据,选择2远程数据搜索

javascript - Ajax 错误处理 Django 响应

javascript - Angularjs 多个指令 [gridsection, gridsection] 在 : <div gridsection =""> 上请求模板

javascript - 如何更改 SVG 线条的属性?

javascript - Tokbox StreamCreated 被调用的次数与客户端被调用的次数相同

jquery - TypeError : $. ajax(...) 不是函数?