Halaman web terdiri daripada navigasi bar sisi dan iframe untuk memaparkan kandungan. Navigasi mengandungi pautan yang bertujuan untuk menukar kandungan iframe. Walau bagaimanapun, fungsi JavaScript yang direka untuk mengubah sumber iframe tidak berfungsi.
Isu utama berpunca daripada meninggalkan kurungan yang diperlukan untuk melaksanakan fungsi getContent dalam pengendali acara onclick.
Elakkan Acara Sebaris Pengendali
Menggunakan pengendali acara sebaris (cth., onclick, onmouseover) amat tidak digalakkan kerana ia membawa kepada kod spageti, pertindihan kod, isu kebolehskalaan dan penyelewengan daripada amalan terbaik.
Asingkan HTML dan JavaScript
Simpan HTML anda dan kod JavaScript berasingan untuk kebolehbacaan yang lebih baik dan penyelenggaraan yang lebih mudah.
Lumpuhkan Navigasi Pautan untuk Butang
Jika menggunakan pautan untuk elemen seperti butang, tetapkan atribut hrefnya kepada # bukannya "" untuk menghalangnya daripada menavigasi.
Di bawah ialah kod yang disemak dengan pembetulan digunakan:
<br>function getContent() {<br> console.log("Old source was: " iFrame.src);<br> iFrame.src="LoremIpsum .html";<br> console.log("Sumber baharu ialah: " iFrame.src);<br>}</p> <p>// Dapatkan rujukan kepada butang dan iframe<br>var btn = document.getElementById("btnChangeSrc");<br>var iFrame = document.getElementById ("contentFrame");</p> <p>// Sediakan pengendali acara klik untuk butang<br>btn.addEventListener("click", getContent);<br>
Atas ialah kandungan terperinci Mengapa Fungsi JavaScript Saya Tidak Melaksanakan pada Klik Pautan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!