Antworten:
empty()
entfernt den gesamten Inhalt der Auswahl.remove()
entfernt die Auswahl und ihren Inhalt.Erwägen:
<div>
<p><strong>foo</strong></p>
</div>
$('p').empty(); // --> "<div><p></p></div>"
// whereas,
$('p').remove(); // --> "<div></div>"
Beide entfernen die DOM-Objekte und sollten den Speicher freigeben, den sie belegen, ja.
live
oder registriert haben delegate
.
Die Dokumentation erklärt es sehr gut. Es enthält auch Beispiele:
Vor:
<div class="container">
<div class="hello">Hello</div>
<div class="goodbye">Goodbye</div>
</div>
.entfernen():
$('.hello').remove();
nach dem:
<div class="container">
<div class="goodbye">Goodbye</div>
</div>
Vor:
<div class="container">
<div class="hello">Hello</div>
<div class="goodbye">Goodbye</div>
</div>
.leer():
$('.hello').empty();
nach dem:
<div class="container">
<div class="hello"></div>
<div class="goodbye">Goodbye</div>
</div>
In Bezug auf den Speicher wird der Garbage Collector den Speicher zurückfordern, sobald ein Element aus dem DOM entfernt wurde und keine Verweise mehr darauf vorhanden sind.
$("body").empty()
- Es entfernt die HTML-DOM-Elemente im Body-Tag. -
Wenn Sie deklarieren $("body").remove()
, wird das gesamte HTML-DOM zusammen mit dem Body-TAG entfernt.