如果將事件偵聽器附加到表的特定列中的每個單元格,然後將每一行從表中刪除,爲避免內存泄漏,開發人員需要刪除該事件 - 行被刪除之前的聽衆,還是瀏覽器清理乾淨?DOM事件偵聽器垃圾回收
編輯:邁克爾建議說的文章event delegation
比監聽器直接綁定到表中的每個單元格執行得更好,但我不確定從垃圾收集角度來看它是更好還是隻是表現更好。請給出意見。從文章:
$('table').on('click', 'td', function() {
$(this).toggleClass('active');
});
據說是優於:
$('table td').on('click', function() {
$(this).toggleClass('active');
});
EDIT2:和jQuery documentation of .on() and event delegation還側重於性能,但是從當行是一個垃圾收集的角度發生了什麼問題從大表中反覆刪除整體,並且委託機制正在監聽單元格單擊,並保留。
對此 https://developer.mozilla.org/en-US/docs/JavaScript/Memory_Management看看 它可能是有益 –