Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Menyuntik Tag Skrip Secara Dinamik dengan Sumber Dinamik yang Mengandungi `document.write`?

Bagaimana untuk Menyuntik Tag Skrip Secara Dinamik dengan Sumber Dinamik yang Mengandungi `document.write`?

Patricia Arquette
Patricia Arquetteasal
2024-10-30 02:26:02946semak imbas

How to Dynamically Inject Script Tags with Dynamic Sources Containing `document.write`?

Suntikan Teg Skrip Dinamik dengan Sumber Dinamik

Apabila cuba menambah teg skrip pada halaman web secara dinamik, adalah penting untuk mempertimbangkan isu yang mungkin timbul dengan sumber skrip, seperti kemasukan document.write. Walaupun kaedah suntikan skrip tradisional berfungsi dengan baik untuk skrip dengan sumber statik, kaedah ini boleh gagal dalam kes ini.

Untuk menyuntik teg skrip dengan berkesan dengan sumber yang dijana secara dinamik yang mungkin termasuk document.write, pendekatan berbeza diperlukan . Ini melibatkan mencipta elemen skrip baharu menggunakan document.createElement('script'), menetapkan atribut srcnya kepada sumber yang diingini dan menambahkannya pada document.head.

Sebagai contoh, kod berikut menunjukkan cara untuk tambahkan tag skrip secara dinamik dengan sumber yang termasuk document.write:

var my_awesome_script = document.createElement('script');

my_awesome_script.setAttribute('src','http://example.com/site.js');

document.head.appendChild(my_awesome_script);

Dengan menggunakan kaedah ini, penyemak imbas akan melaksanakan kod skrip secara dinamik, termasuk sebarang panggilan document.write yang terkandung di dalamnya. Ini menyediakan cara yang boleh dipercayai dan berkesan untuk menyuntik skrip dengan sumber dinamik.

Atas ialah kandungan terperinci Bagaimana untuk Menyuntik Tag Skrip Secara Dinamik dengan Sumber Dinamik yang Mengandungi `document.write`?. 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