我查看了jQuery
函数的.empty()
源代码:
empty: function() {
for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
// Remove element nodes and prevent memory leaks
if ( elem.nodeType === 1 ) {
jQuery.cleanData( elem.getElementsByTagName("*") );
}
// Remove any remaining nodes
while ( elem.firstChild ) {
elem.removeChild( elem.firstChild );
}
}
只需将innerHTML
更改为空字符串就不会更简单:
empty: function() {
for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
elem.innerHTML = "";
}
empty
docs:
描述:从DOM中删除匹配元素集的所有子节点。
答案 0 :(得分:11)
想想.data()
expandos和事件处理程序......只需删除DOM,就会每次都创建内存泄漏。