Saya selalu berpikir bahwa dalam pengembangan web, peristiwa klik dua kali jarang digunakan. Sampai saat ini, sebuah proyek diperlukan untuk mengikat dua peristiwa, klik dan klik dua kali, ke sebuah tombol. Pada awalnya saya pikir itu hanya masalah mengikat dua peristiwa ke tombol...tetapi kemudian saya menyadari bahwa saya berpikir terlalu sederhana. Ketika peristiwa klik dua kali dipicu, peristiwa klik juga dipicu~
Setelah beberapa penelitian, saya akhirnya memecahkan masalah tersebut dengan menggunakan metode eksekusi tertunda "setTimeout" di JS untuk menunda eksekusi klik selama 300 milidetik. Kodenya adalah sebagai berikut:
Copy kode kodenya sebagai berikut:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http ://www.w3.org/1999/xhtml"><kepala>
<judul></judul>
<mce:script src="jquery-1.6.min.js" mce_src="jquery-1.6.min.js" type="text/javascript"></mce:script>
<mce:script type="teks/javascript">
<!--
$(fungsi () {
varnum = 0;
var timeFunName = null;
$("tombol").bind("klik", fungsi () {
// Membatalkan metode yang tidak dijalankan selama penundaan terakhir
clearTimeout(waktuFunName);
// Tunda 300 milidetik untuk mengeksekusi klik
timeFunName = setTimeout(fungsi () {
nomor++;
$("textarea").val($("textarea").val() + "th" + num + "th event, nama acara: click/n");
}, 300); }).bind("dblklik", fungsi() {
// Membatalkan metode yang tidak dijalankan selama penundaan terakhir
clearTimeout(waktuFunName);
nomor++;
$("textarea").val($("textarea").val() + "th" + num + "th event, nama acara: klik dua kali/n");
});
});
// --></mce:skrip>
</kepala>
<tubuh>
<textarea row="20" cols="50"></textarea><button type="button">Kirim</button></body></html>