首頁 >web前端 >js教程 >如何有效率地刪除 JavaScript 中的 HTML 元素?

如何有效率地刪除 JavaScript 中的 HTML 元素?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-26 12:53:10288瀏覽

How Can I Efficiently Remove HTML Elements in JavaScript?

輕鬆刪除元素:探索nativeDOM和node.remove()

當負責在JavaScript中刪除HTML元素時,長期以來,一個,一個明顯的奇怪之處:必須先選擇父節點。直到最近,標準方法還需要以下程式碼:

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

改進的方法

對於現代瀏覽器,增強原生 DOM功能提供了一種感覺更佳的解決方案直觀:

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]);
        }
    }
}

現在,刪除元素變成了微風:

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

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

node.remove()的勝利

在最近的更新中,node.remove( )已成為此任務的救世主,可在所有現代瀏覽器中使用,除了IE:

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

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

雖然這些解決方案可能不適用於IE 7及更低版本,但它們提供了一種更平滑、更合乎邏輯的方式從DOM 中刪除元素,留下更有效率、更簡單的編碼體驗背後。

以上是如何有效率地刪除 JavaScript 中的 HTML 元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn