Rumah > hujung hadapan web > tutorial js > Mengapa Pisahkan Teg `` dalam Panggilan `document.write()`?

Mengapa Pisahkan Teg `` dalam Panggilan `document.write()`?

Susan Sarandon
Lepaskan: 2025-01-05 13:35:45
asal
238 orang telah melayarinya

Why Split the `` Tag in `document.write()` Calls?

Memisahkan Panggilan Tag Within document.write(): Mengapa?

Pengenalan:

Amalan membahagikan tag HTML kepada beberapa bahagian dalam document.write() telah membingungkan ramai pembangun . Khususnya, pemisahan tag telah menimbulkan persoalan mengenai tujuannya. Artikel ini menyelidiki sebab di sebalik teknik ini, menjelaskan cabaran dan pertimbangan yang terlibat.

Cabaran dengan Peletakan Teg:

Sebab utama pemisahan tag adalah disebabkan oleh tingkah laku yang menarik dalam SGML, bahasa penanda yang mendasari HTML. Menurut SGML, blok skrip ditamatkan oleh mana-mana jujukan "end-tag open" (ETAGO), termasuk

Jika teg tidak dipecahkan, ia akan menamatkan secara pramatang; blok. Untuk mengelakkan ini, pembangun mesti memisahkan teg dan meletakkan

Keserasian Pelayar dan Pertimbangan XHTML:

Memisahkan tag juga menangani isu keserasian penyemak imbas. Walaupun penyemak imbas biasanya menghuraikan HTML sebagai CDATA, menganggap mana-mana tag.

Dalam XHTML, di mana blok skrip tidak dilayan secara khusus, semua tidak terlepas < aksara mesti dilepaskan menggunakan &. Walau bagaimanapun, ini boleh menyebabkan kekeliruan apabila pelayar menghuraikan XHTML sebagai HTML. Membahagikan tag memastikan keserasian dengan kedua-dua jenis penghurai.

Pendekatan Alternatif:

Semasa membelah tag dalam document.write() ialah amalan biasa, ia bukan satu-satunya pilihan. Penyelesaian yang lebih elegan ialah mengekod keseluruhan teg menggunakan aksara khas, seperti:

document.write('\x3Cscript type="text/javascript" src="foo.js">\x3C/script>');
Salin selepas log masuk

Kaedah ini berfungsi pada kedua-dua penghurai HTML dan XHTML dan mengelakkan keperluan untuk memisahkan teg.

Atas ialah kandungan terperinci Mengapa Pisahkan Teg `` dalam Panggilan `document.write()`?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan