Heim >Web-Frontend >js-Tutorial >Wie kann ich Elemente in JavaScript effizient nach ID entfernen?

Wie kann ich Elemente in JavaScript effizient nach ID entfernen?

Susan Sarandon
Susan SarandonOriginal
2024-12-29 06:13:13949Durchsuche

How Can I Efficiently Remove Elements by ID in JavaScript?

Entfernen von Elementen nach ID in JavaScript: Eine praktische Alternative

In JavaScript erfordert die Standardmethode zum Entfernen eines Elements das Durchlaufen bis zu seinem übergeordneten Knoten:

var element = document.getElementById("element-id");
element.parentNode.removeChild(element);

Dieser Ansatz erfordert einen zusätzlichen Schritt für den Zugriff auf das übergeordnete Element, was ineffizient sein kann. In diesem Artikel wird eine Alternative untersucht, die das Entfernen von Elementen vereinfacht, indem dem Element-Prototyp eine Remove-Methode hinzugefügt wird.

Durch die Erweiterung der Element- und NodeList-Prototypen können Sie die Remove-Methode für alle HTML-Elemente und Sammlungen einführen:

Element.prototype.remove = function() {
    this.parentElement.removeChild(this);
}
NodeList.prototype.remove = HTMLCollection.prototype.remove = function() {
    for(var i = this.length - 1; i >= 0; i--) {
        if(this[i] && this[i].parentElement) {
            this[i].parentElement.removeChild(this[i]);
        }
    }
}

Mit diesem Zusatz können Sie nun Elemente direkt entfernen:

document.getElementById("my-element").remove();

Oder für mehrere Elemente:

document.getElementsByClassName("my-elements").remove();

Hinweis: Diese Lösung wird von IE 7 und niedriger nicht unterstützt.

Update (2019): Node.js hat die Funktion node.remove() eingeführt, die das Entfernen von Elementen noch einfacher macht:

document.getElementById("my-element").remove();

Oder für Sammlungen:

[...document.getElementsByClassName("my-elements")].map(n => n && n.remove());

Dieser aktualisierte Ansatz wird von modernen Browsern, einschließlich Chrome, Firefox, Edge und Safari, weitgehend unterstützt.

Das obige ist der detaillierte Inhalt vonWie kann ich Elemente in JavaScript effizient nach ID entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn