Rumah  >  Artikel  >  hujung hadapan web  >  Dilema JavaScript: Membenamkan Skrip lwn. Pelaksanaan Sebaris?

Dilema JavaScript: Membenamkan Skrip lwn. Pelaksanaan Sebaris?

Linda Hamilton
Linda Hamiltonasal
2024-10-24 05:24:01354semak imbas

JavaScript Dilemma: Embedding Scripts vs. Inline Execution?

JavaScript dalam Teg Skrip Luaran: Dilema Sumber

Apabila menggunakan teg skrip luaran dengan sintaks, adalah penting untuk memahami batasannya. Percubaan untuk membenamkan JavaScript secara langsung dalam teg ini, seperti dalam contoh di bawah, menghasilkan tingkah laku yang tidak dijangka:

<code class="html"><script src="myFile.js">
    alert("This is a test");
</script></code>

Kod ini tidak berfungsi kerana teg skrip luaran direka untuk memuatkan kod JavaScript daripada sumber yang ditentukan. Mereka tidak membenarkan pelaksanaan sebaris JavaScript. Untuk menyelesaikan masalah ini, kita perlu mencipta tag untuk mana-mana kod JavaScript yang ingin kami laksanakan pada halaman itu sendiri:

<code class="html"><script>
    alert("This is a test");
</script></code>

Contoh berikut menggambarkan senario biasa di mana kami mungkin menghadapi cabaran ini:

<code class="html"><script src="script/addScript.js">
    addScript("script/obj.js");
    addScript("script/home/login.js");
</script></code>

Di sini, kami cuba untuk menambah berbilang skrip pada DOM menggunakan fungsi addScript daripada fail luaran, tetapi pendekatan ini gagal. Untuk melaksanakan fungsi addScript dan memuatkan skrip secara dinamik, kita mesti mencipta tag:

<code class="html"><script>
    addScript("script/obj.js");
    addScript("script/home/login.js");
</script></code>

Sebab tingkah laku ini terletak pada fakta bahawa teg skrip luaran memuatkan satu skrip pada satu masa. Percubaan untuk memasukkan kedua-dua skrip sebaris dan luaran dalam tag mengakibatkan skrip sebaris diabaikan. Untuk melaksanakan berbilang skrip pada halaman, adalah perlu untuk mencipta tag untuk setiap skrip.

Perlu diambil perhatian bahawa walaupun kandungan teg diabaikan apabila digunakan bersama dengan skrip luaran, anda boleh menyimpan data dalam teg ini menggunakan atribut seperti data-*. Pendekatan ini boleh berfaedah untuk senario tertentu, tetapi menggunakan data-* atribut biasanya dianggap sebagai penyelesaian yang lebih bersih.

Atas ialah kandungan terperinci Dilema JavaScript: Membenamkan Skrip lwn. Pelaksanaan Sebaris?. 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