Rumah > hujung hadapan web > tutorial js > Mengapa Elakkan `document.write()` dan Apakah Alternatif Terbaik?

Mengapa Elakkan `document.write()` dan Apakah Alternatif Terbaik?

Linda Hamilton
Lepaskan: 2024-12-01 20:43:11
asal
808 orang telah melayarinya

Why Avoid `document.write()` and What Are the Best Alternatives?

Alternatif untuk document.write() dan Mengapa Perlu Mengelakkannya

Walaupun biasa ditemui dalam tutorial, penggunaan document.write( ) secara meluas tidak digalakkan kerana sifatnya yang merosakkan dan ketidakpatuhan dengan HTML standard.

Sebab untuk Mengelakkan document.write():

  • Penggantian Dokumen: document.write() menggantikan keseluruhan dokumen , termasuk sebarang kandungan sedia ada. Ini boleh menjadi malapetaka jika digunakan selepas halaman dimuatkan.
  • XHTML tidak sah: Dalam XHTML, document.write() ialah kod tidak sah kerana mengabaikan struktur dokumen.
  • Isu Prestasi: document.write() memperlahankan penyemak imbas dengan memaksanya untuk reparse dan render keseluruhan dokumen.

Alternatif untuk document.write():

Nasib baik, terdapat alternatif untuk document.write() yang kedua-duanya berkesan dan mematuhi piawaian:

  • innerHTML Harta: Sifat ini membenarkan anda mengubah suai kandungan elemen HTML tanpa menggantikan keseluruhan dokumen. Contoh: element.innerHTML = "Kandungan Baharu";
  • createElement() Kaedah: Mencipta elemen HTML baharu dan menambahkannya pada dokumen. Contoh: document.createElement("p").innerHTML = "Perenggan Baharu";
  • createTextNode() Kaedah: Mencipta nod teks dan menambahkannya pada elemen HTML. Contoh: element.appendChild(document.createTextNode("Teks Baharu"));

Contoh:

Pertimbangkan HTML berikut:

<p>This is an innocent HTML page.</p>
Salin selepas log masuk

Menggunakan innerHTML untuk menukar secara dinamik kandungan:

<script>
  document.querySelector("p").innerHTML = "This page is now modified.";
</script>
Salin selepas log masuk

Ini akan mengubah suai kandungan perenggan tanpa menjejaskan dokumen sekeliling. Pendekatan ini lebih selamat dan lebih cekap daripada menggunakan document.write().

Atas ialah kandungan terperinci Mengapa Elakkan `document.write()` dan Apakah Alternatif Terbaik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan