Properti keyCode KeyboardEvent
Definisi dan Penggunaan
Properti keyCode mengembalikan yang di trigger Peristiwa onkeypress Kode Karakter Unicode untuk tombol yang ditekan, atau men trigger onkeydown atau Peristiwa onkeyup Kode Tombol Unicode untuk tombol
Perbedaan antara dua tipe kode:
- Kode Karakter - Angka yang mewakili karakter ASCII
- Kode tombol - mewakili angka digital yang sebenarnya dari tombol papan ketik
Tipe ini tidak selalu berarti hal yang sama. Contohnya, tombol kecil "w" dan besar "W" memiliki kode papan tombol yang sama, karena tombol yang ditekan di keyboard sama ("W" = angka "87"), tetapi kode karakter berbeda, karena karakter yang dihasilkan berbeda ("w" atau "W", yaitu "119" atau "87"). - Lihat contoh yang lebih banyak di bawah ini untuk memahami ini lebih baik.
Petunjuk:Untuk mengetahui apakah tombol yang dapat dicetak ditekan (seperti "a" atau "5"), disarankan untuk menggunakan properti ini di peristiwa onkeypress. Untuk mengetahui apakah tombol fungsi ditekan (seperti "F1", "CAPS LOCK" atau "Home"), gunakan peristiwa onkeydown atau onkeyup.
Keterangan:Dalam Firefox, properti keyCode untuk peristiwa onkeypress tidak bekerja (hanya mengembalikan 0). Untuk solusi yang dapat berlaku di seluruh browser, silakan gunakan Properti whichDipakai bersamaan dengan keyCode, seperti contoh:
var x = event.which || event.keyCode; // gunakan which atau keyCode tergantung dukungan browser
Petunjuk:Untuk daftar semua karakter Unicode, lihat Referensi Unicode lengkap.
Petunjuk:Jika ingin mengkonversi nilai Unicode ke karakter, gunakan Metode fromCharCode().
Keterangan:Properti ini hanya read-only.
Keterangan:keyCode dan properti which disediakan hanya untuk kompatibilitas. Edisi terbaru standar DOM event menyarankan untuk menggunakan properti key (jika tersedia).
Petunjuk:Jika Anda ingin mengetahui apakah tombol "ALT", "CTRL", "META", atau "SHIFT" ditekan saat terjadi peristiwa penekanan tombol, gunakan altKey,ctrlKey/,metaKey atau shiftKey Atribut.
Contoh
Contoh 1
Ambil nilai Unicode dari tombol papan ketik yang ditekan:
var x = event.keyCode;
Contoh 2
Menggunakan onkeypress dan onkeydown untuk menunjukkan perbedaan antara kode karakter dan kode papan tombol:
<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)"> function uniCharCode(event) { var char = event.which || event.keyCode; document.getElementById("demo").innerHTML = "Kode KARAKTER Unicode: " + char; } function uniKeyCode(event) { var key = event.keyCode; document.getElementById("demo2").innerHTML = "Kode KEY Unicode: " + key; }
Ketika menekan tombol "a" di papan tombol (tanpa Capslock), hasil char dan key akan adalah:
Kode KARAKTER Unicode: 97 Kode KEY Unicode: 65
Contoh 3
Jika pengguna menekan tombol Escape, tampilkan beberapa teks:
<input type="text" onkeydown="myFunction(event)"> function myFunction(event) { var x = event.keyCode; if (x == 27) { // 27 adalah tombol ESC alert("Anda menekan tombol Escape!"); } }
Contoh 4
Mengubah nilai Unicode menjadi karakter (tidak berlaku untuk tombol fungsi):
var x = event.keyCode; // Mendapatkan nilai Unicode var y = String.fromCharCode(x); // Mengubah nilai menjadi karakter
Sintaks
event.keyCode
Detil Teknologi
Nilai kembalian: | Nilai numerik, menunjukkan kode karakter Unicode atau kode tombol Unicode. |
---|---|
Versi DOM: | DOM Level 2 Events |
Dukungan Peramban
Atribut | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
keyCode | Dukungan | Dukungan | Dukungan | Dukungan | Dukungan |
Halaman yang Berhubungan
Referensi HTML DOM:Properti key KeyboardEvent
Referensi HTML DOM:Properti charCode KeyboardEvent
Referensi HTML DOM:Properti which KeyboardEvent