Rumah >hujung hadapan web >tutorial js >Mengapa Fungsi JavaScript Saya Tidak Dicetuskan Apabila Saya Mengklik Pautan?

Mengapa Fungsi JavaScript Saya Tidak Dicetuskan Apabila Saya Mengklik Pautan?

Barbara Streisand
Barbara Streisandasal
2024-12-22 22:38:10817semak imbas

Why Isn't My JavaScript Function Triggered When I Click a Link?

Fungsi JavaScript Tidak Dicetuskan pada Klik Pautan

Isu

Dalam halaman HTML, pautan dalam navigasi bar sisi bertujuan untuk mengemas kini atribut src iFrame yang mengandungi kandungan. Walaupun menggunakan kod yang betul, fungsi JavaScript tidak dilaksanakan apabila pautan diklik.

Ralat

Terlupa untuk menggunakan fungsi JavaScript dengan menambah kurungan adalah punca utama isu ini. Selain itu, terdapat beberapa amalan yang disyorkan untuk diikuti:

Amalan Terbaik

  1. Elakkan atribut acara HTML sebaris (onclick, onmouseover, dll.):

    • Mencipta kod spageti dengan kebolehbacaan dan penyahpepijatan yang lemah keupayaan.
    • Membawa kepada pertindihan kod dan skalabiliti yang dikurangkan.
    • Melanggar prinsip pembangunan pengasingan kebimbangan.
    • Mengganggu pengikatan ini dalam fungsi panggil balik.
  2. Gunakan pendengar acara (addEventListener()):

    • Membenarkan pengendalian acara yang ringkas dan cekap.
    • Memisahkan HTML dan JavaScript, mempromosikan kebolehbacaan dan kebolehselenggaraan kod.
    • Menyediakan cara yang berkesan untuk mengendalikan acara untuk pelbagai elemen.
  3. Lumpuhkan navigasi hiperpautan apabila menggunakan pautan untuk pengendalian acara:

    • Sebaliknya, tetapkan atribut href kepada # daripada "" untuk menghalang navigasi lalai penyemak imbas tingkah laku.

Kod Disemak

<button>
// Add parentheses to invoke the function on link click
function getContent() {
  iFrame.src = "LoremIpsum.html";
  console.log("Source updated!");
}

// Set up event listener for the button
btn.addEventListener("click", getContent);

Atas ialah kandungan terperinci Mengapa Fungsi JavaScript Saya Tidak Dicetuskan Apabila Saya Mengklik Pautan?. 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