Rumah > hujung hadapan web > tutorial js > Bagaimana Mengendalikan Kegagalan Pelaksanaan Tulisan Dokumen Selepas Pemuatan Skrip Asynchronous?

Bagaimana Mengendalikan Kegagalan Pelaksanaan Tulisan Dokumen Selepas Pemuatan Skrip Asynchronous?

Barbara Streisand
Lepaskan: 2024-10-20 14:13:30
asal
284 orang telah melayarinya

How to Handle Document Write Execution Failure After Asynchronous Script Loading?

Kegagalan Pelaksanaan Penulisan Dokumen Selepas Pemuatan Skrip Tak Segerak

Apabila memuatkan skrip secara tidak segerak, skrip yang dimuatkan berjalan selepas dokumen dihuraikan sepenuhnya dan tertutup. Had ini menghalang penggunaan document.write() daripada dalam skrip yang dimuatkan.

Sebab Ralat

Mesej ralat "Tidak boleh menulis ke dalam dokumen daripada skrip luaran yang dimuatkan secara tak segerak" menunjukkan bahawa percubaan untuk menulis pada dokumen menggunakan document.write() gagal kerana skrip telah dimuatkan selepas dokumen ditutup.

Manipulasi DOM Alternatif

Untuk menangani isu ini, anda perlu menggantikan mana-mana pernyataan document.write() dengan manipulasi DOM yang jelas. Ini melibatkan mencipta elemen DOM dan memasukkannya ke dalam elemen induk menggunakan kaedah seperti:

  • .appendChild()
  • .insertBefore()
  • .innerHTML

Contoh

Sebagai contoh, bukannya menggunakan document.write() dalam skrip sebaris seperti berikut:

<code class="html"><div id="container">
<script>
document.write('<span style="color:red;">Hello</span>');
</script>
</div></code>
Salin selepas log masuk

Anda akan menggunakan kod berikut dalam skrip yang dimuatkan secara dinamik:

<code class="javascript">var container = document.getElementById("container");
var content = document.createElement("span");
content.style.color = "red";
content.innerHTML = "Hello";
container.appendChild(content);</code>
Salin selepas log masuk

Sebagai alternatif, anda boleh menetapkan innerHTML bekas:

<code class="javascript">var container = document.getElementById("container");
container.innerHTML = '<span style="color:red;">Hello</span>';</code>
Salin selepas log masuk

Dengan menggantikan penyataan document.write() dengan manipulasi DOM alternatif ini teknik, anda boleh memastikan kejayaan pelaksanaan skrip anda yang dimuatkan secara tak segerak sambil masih mencapai pengubahsuaian dokumen yang diingini.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Kegagalan Pelaksanaan Tulisan Dokumen Selepas Pemuatan Skrip Asynchronous?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber: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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan