Rumah > Artikel > hujung hadapan web > Mengapa Acara Klik Butang Pop Timbul Sambungan Chrome saya Tidak Berfungsi?
Menyelesaikan Masalah Pop Timbul Sambungan dengan Peristiwa Klik Dilumpuhkan
Apabila membangunkan sambungan Chrome, ada kemungkinan untuk menghadapi situasi di mana pop timbul tidak bertindak balas atau peristiwa klik tetikus tidak dikendalikan. Isu ini boleh menghalang sambungan daripada berfungsi dengan betul.
Penerangan Masalah:
Seorang pengguna telah mencipta pop timbul sambungan Chrome yang mengandungi butang untuk menambah pembolehubah pada klik. Walau bagaimanapun, klik butang tidak mencetuskan kelakuan yang dijangkakan untuk menambah pembolehubah. Fail manifest.json dan kod halaman HTML untuk pop timbul disediakan:
manifest.json:
{ "name":"Facebook", "version":"1.0", "description":"My Facebook Profile", "manifest_version":2, "browser_action":{ "default_icon":"google-plus-red-128.png", "default_popup":"hello.html" } }
hello.html (Popup Halaman):
<!DOCTYPE html> <html> <head> <script> var a=0; function count() { a++; document.getElementById("demo").innerHTML=a; return a; } </script> </head> <body> <p>
Penyiasatan:
Siasatan mendedahkan bahawa isu itu disebabkan oleh Dasar Keselamatan Kandungan (CSP) lalai yang dikuatkuasakan oleh Chrome. CSP melarang pelaksanaan JavaScript sebaris, yang digunakan dalam halaman HTML pop timbul untuk mengendalikan acara klik.
Penyelesaian:
Untuk menyelesaikan isu, JavaScript sebaris daripada fail HTML dialih keluar dan diletakkan dalam fail JS yang berasingan:
hello.html (Popup Halaman):
<!DOCTYPE html> <html> <head> </head> <body> <p>
popup.js:
var a=0; function count() { a++; document.getElementById('demo').textContent = a; } document.getElementById('do-count').onclick = count;
Dengan perubahan ini, pop timbul kini akan menambah pembolehubah seperti yang dijangkakan apabila butang diklik.
Atas ialah kandungan terperinci Mengapa Acara Klik Butang Pop Timbul Sambungan Chrome saya Tidak Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!