Was ist der funktionale Unterschied zwischen diesen drei jQuery
Methoden:
- ablösen()
- ausblenden()
- entfernen()
javascript
jquery
Vivek
quelle
quelle
detach
, werfen Sie einen Blick auf stackoverflow.com/questions/12058896/...Antworten:
hide()
Setzt die CSS-display
Eigenschaft der übereinstimmenden Elemente aufnone
.remove()
Entfernt die übereinstimmenden Elemente vollständig aus dem DOM.detach()
ist wieremove()
, behält aber die gespeicherten Daten und Ereignisse bei, die den übereinstimmenden Elementen zugeordnet sind.Um ein getrenntes Element erneut in das DOM einzufügen, fügen Sie einfach den zurückgegebenen
jQuery
Satz ein vondetach()
:quelle
remove
anstelle von verwendedetach
, funktioniert das Beispiel immer noch.remove()
und erneut angehängt haben , wird die Bindung gelöscht und das Klicken auf den Bereich führt zu nichts. Wenn Sie aufrufendetach()
und erneut anbringen, bleibt die Bindung erhalten und der Klick-Handler funktioniert weiter.Stellen Sie sich ein Stück Papier auf einem Tisch vor, auf dem einige Notizen mit Bleistift geschrieben sind.
hide
-> werfen Sie eine Kleidung daraufempty
-> Entfernen Sie die Notizen mit einem Radiergummidetach
-> Nehmen Sie das Papier in die Hand und bewahren Sie es für zukünftige Pläne aufremove
-> nimm das Papier und wirf es in den MülleimerDas Papier repräsentiert das Element und die Notizen repräsentieren den Inhalt (untergeordnete Knoten) des Elements.
Ein bisschen vereinfacht und nicht ganz genau, aber leicht zu verstehen.
quelle
hide()
setzt die Anzeige des übereinstimmenden Elements auf keine.detach()
Entfernt die übereinstimmenden Elemente, einschließlich aller Text- und untergeordneten Knoten.Diese Methode speichert alle dem Element zugeordneten Daten und kann daher zum Wiederherstellen der Daten des Elements sowie von Ereignishandlern verwendet werden.
remove()
Entfernt auch die übereinstimmenden Elemente, einschließlich aller Text- und untergeordneten Knoten.In diesem Fall können jedoch nur die Daten des Elements wiederhergestellt werden, nicht die Ereignishandler.
quelle
In jQuery gibt es drei Methoden zum Entfernen von Elementen aus dem DOM. Diese drei Methoden sind
.empty()
,.remove()
und.detach()
. Alle diese Methoden werden zum Entfernen von Elementen aus dem DOM verwendet, sind jedoch alle unterschiedlich..ausblenden()
Blenden Sie die übereinstimmenden Elemente aus. Ohne Parameter ist die .hide () -Methode der einfachste Weg, ein HTML-Element auszublenden:
.leer()
Die Methode .empty () entfernt alle untergeordneten Knoten und Inhalte aus den ausgewählten Elementen. Diese Methode entfernt weder das Element selbst noch seine Attribute.
Hinweis
Die Methode .empty () akzeptiert keine Argumente, um Speicherverluste zu vermeiden. jQuery entfernt andere Konstrukte wie Daten- und Ereignishandler aus den untergeordneten Elementen, bevor die Elemente selbst entfernt werden.
Beispiel
Dies führt zu einer DOM-Struktur, in der der Hai-Text gelöscht wird:
Wenn wir eine beliebige Anzahl verschachtelter Elemente hätten
<div class="hai">
, würden diese ebenfalls entfernt..entfernen()
Die Methode .remove () entfernt die ausgewählten Elemente, einschließlich aller Text- und untergeordneten Knoten. Diese Methode entfernt auch die Daten und Ereignisse der ausgewählten Elemente.
Hinweis
Verwenden Sie .remove (), wenn Sie das Element selbst sowie alles darin entfernen möchten. Darüber hinaus werden alle gebundenen Ereignisse und jQuery-Daten, die den Elementen zugeordnet sind, entfernt.
BEISPIEL
Betrachten Sie das folgende HTML:
Dies führt zu einer DOM-Struktur mit dem
<div>
gelöschten Element:Wenn wir eine beliebige Anzahl verschachtelter Elemente hätten
<div class="hai">
, würden diese ebenfalls entfernt. Andere jQuery-Konstrukte wie Daten- oder Ereignishandler werden ebenfalls gelöscht..ablösen()
Die Methode .detach () entfernt die ausgewählten Elemente, einschließlich aller Text- und untergeordneten Knoten. Es werden jedoch Daten und Ereignisse gespeichert. Diese Methode speichert auch eine Kopie der entfernten Elemente, sodass sie zu einem späteren Zeitpunkt wieder eingefügt werden können.
Hinweis
Die Methode .detach () ist nützlich, wenn entfernte Elemente zu einem späteren Zeitpunkt wieder in das DOM eingefügt werden sollen.
Beispiel
Weitere Informationen finden Sie unter: http://www.scriptcafe.in/2014/03/what-is-difference-between-jquery_15.html
quelle
quelle