1

JS オブジェクトで参照される Jquery DOM オブジェクトにカスタム イベントをバインドすると、IE8/7 でメモリ リークが発生します。IE9は問題ないようです。標準イベント (「クリック」) を使用しても問題なく動作します。

http://jsfiddle.net/hah8n/1/の完全なコード

var testField = function ($in) {
  var $input = $in;
  var onCustom = function () { }

  this.Test = function () {
    $input.on('custom', onCustom);
  }
}

var $input = $("<span>" + Math.random() + "</span>").appendTo($row);
new testField($input).Test();

JSFiddle では、解決策としてクリーンアップ コードも追加しましたが、役に立ちません。また、「testField」のすべてのインスタンスをどこかに保存し、後でそれらを削除しても(「delete」コマンドを使用)、役に立ちませんでした。

カスタム イベントや IE8 での特別な扱いについて何かアイデアはありますか?

4

1 に答える 1

1

Jquery 1.8b2 はこれを修正しているようです。:-)

于 2012-07-11T14:23:04.620 に答える