Rumah > Artikel > hujung hadapan web > Mengapa Peristiwa onchange Tidak Dicetuskan untuk Seret Input Julat dalam Firefox?
Peristiwa onchange Firefox Tidak Dicetuskan pada Seret Input Julat
Dalam elemen input dengan jenis "julat," apabila peluncur diseret, onchange acara hanya dicetuskan apabila peluncur dijatuhkan ke kedudukan baharu dalam Firefox. Sebaliknya, Chrome dan penyemak imbas lain mencetuskan peristiwa onchange semasa seretan.
Penyelesaian: Gunakan Peristiwa oninput
Firefox dengan betul mencetuskan acara onchange hanya selepas dikeluarkan, mengikut spesifikasi. Untuk menangkap kemas kini langsung semasa menyeret dalam semua penyemak imbas, gunakan acara oninput sebaliknya.
<code class="html">function showVal(newVal){ document.getElementById("valBox").innerHTML=newVal; }</code>
<code class="html"><span id="valBox"></span> <input type="range" min="5" max="10" step="1" oninput="showVal(this.value)"></code>
Menggabungkan oninput dan onchange untuk Keserasian Merentas Pelayar
Untuk keserasian merentas penyemak imbas, pertimbangkan untuk menggabungkan kedua-dua pengendali acara oninput dan onchange:
<code class="html"><span id="valBox"></span> <input type="range" min="5" max="10" step="1" oninput="showVal(this.value)" onchange="showVal(this.value)" /></code>
Ini memastikan acara onchange masih dicetuskan dalam Firefox semasa dikeluarkan, manakala acara oninput menyediakan kemas kini berterusan dalam semua penyemak imbas.
Atas ialah kandungan terperinci Mengapa Peristiwa onchange Tidak Dicetuskan untuk Seret Input Julat dalam Firefox?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!