【问题标题】:Jquery 1.7 and IE 8 memory leakageJquery 1.7 和 IE 8 内存泄漏
【发布时间】:2012-01-23 17:47:41
【问题描述】:

我有一个脚本,它在 Intranet 的每个页面上运行,它基于类为输入字段添加事件、设置大小和长度(这允许在公司之间进行不同的配置)。

但是,我注意到内存泄漏。

我添加事件的代码是:

        $("input.PartNo" ).addClass("font8_input").attr({maxlength: '20',size:'20'})
        .bind('focus',function(event){javascript:fncAjaxClear();$(this).addClass("input_focus");})
        .bind('blur',function(event){if (typeof fncPartBlur === "function") fncPartBlur(''+$(this).attr("id")+'');$(this).removeClass("input_focus input_error");})
        .bind('keyup',function(event){javascript:fncAjaxSearch('wsDatabase','..\\AjaxBrowses\\PartBrowse.asp',''+$(this).attr("id")+'',''+$(this).attr("id")+'List','fncPreAjaxPart','fncPostAjaxPart');})
        .each(function(){$(this).after('<div id="'+$(this).attr("id")+'List" class="AjaxSuggest"></div>');});

阅读“Learning Jquery”一书后,它谈到了将事件绑定到变量。这是正确的吗?如果是这样,最好的方法是更改​​我上面的代码以动态创建变量名称,然后将事件绑定到这些名称。

谢谢。

【问题讨论】:

  • .PartNo 在 DOM 中存在多少次?
  • 只有一次。每个 id 都是唯一的,所以我按类类型选择。
  • 我注意到通过使用任务管理器,当我在 Intranet 上进行超链接时,IE 的内存使用量增加了。如果我回到主页,内存不会下降 - 永远......

标签: jquery memory-leaks


【解决方案1】:

经过进一步调查,问题似乎是 IE 的一般问题,而不是由 jquery 引起的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-13
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 2015-12-27
    • 2021-12-17
    • 2013-04-02
    • 2023-04-08
    相关资源
    最近更新 更多