Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengeluarkan Elemen HTML dengan Cekap dalam JavaScript?

Bagaimanakah Saya Boleh Mengeluarkan Elemen HTML dengan Cekap dalam JavaScript?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-26 12:53:10288semak imbas

How Can I Efficiently Remove HTML Elements in JavaScript?

Mengalih keluar Elemen dengan Mudah: Meneroka nativeDOM dan node.remove()

Apabila ditugaskan untuk mengalih keluar elemen HTML dalam JavaScript, telah lama berlaku keanehan yang dirasakan: perlu terlebih dahulu memilih nod induk. Sehingga baru-baru ini, cara standard memerlukan kod berikut:

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

Pendekatan Yang Diperbaiki

Untuk pelayar moden, menambah fungsi DOM asli menawarkan penyelesaian yang lebih terasa intuitif:

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

Kini, mengalih keluar elemen menjadi angin:

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

atau

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

Kemenangan node.remove()

Dalam kemas kini terbaharu, node.remove( ) telah muncul sebagai penyelamat untuk tugas ini, tersedia dalam semua penyemak imbas moden kecuali IE:

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

atau

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

Walaupun penyelesaian ini mungkin tidak berfungsi dalam IE 7 dan ke bawah, ia menyediakan cara yang lebih lancar dan logik untuk mengalih keluar elemen daripada DOM, meninggalkan di sebalik pengalaman pengekodan yang lebih cekap dan mudah.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Elemen HTML dengan Cekap dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn