Apabila menambah kotak pilihan secara dinamik, addEventListener mungkin gagal berfungsi apabila mengklik kotak pilihan dalam Internet Explorer 8. Tingkah laku ini berbeza dengan Chrome dan Firefox, di mana pengendali acara digunakan seperti yang diharapkan.
Untuk menyelesaikan isu ini, pertimbangkan pendekatan berikut:
<code class="javascript">var _checkbox = document.createElement("input"); if (_checkbox.addEventListener) { _checkbox.addEventListener("click", setCheckedValues, false); } else { _checkbox.attachEvent("onclick", setCheckedValues); }</code>
Dalam versi Internet Explorer sebelum ini IE9, attachEvent ialah kaedah yang disyorkan untuk mendaftarkan pendengar acara. Untuk versi selepas IE9, addEventListener lebih diutamakan.
Penjelasan:
attachEvent serasi dengan versi Internet Explorer yang lebih lama, manakala addEventListener diseragamkan dan berfungsi dengan penyemak imbas moden. Dengan menyemak sama ada addEventListener tersedia dan menggunakan attachEvent sebagai sandaran, anda memastikan bahawa pengendali acara didaftarkan dengan betul merentas penyemak imbas yang berbeza, termasuk IE8.
Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, berikutan permintaan anda untuk format soalan: * Mengapa AddEventListener Gagal untuk Kotak Semak Dinamik dalam IE8? * Cara Membetulkan Isu addEventListener dengan Kotak Semak Dinamik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!