Bir KeyboardEvent
ateşlendiğinde, hangi tuşa basıldığını test edebilirsiniz çünkü bu olay, mantığa karşı yazabileceğiniz bilgileri içerir.
document.addEventListener("keydown", function(event) ( console.log(event.which); ))
Örneğin, "a" tuşuna basarak elde edersiniz 65
. Görünüşe göre, keyCode ve charCode'un karmaşık olduğu için mantık yazmak en iyisidir:
Event.which özelliği, event.keyCode ve event.charCode'u normalleştirir. Klavye tuş girişi için olayı izlemeniz önerilir.
Ve:
Bir tuşa basma olayında, basılan tuşun Unicode değeri keyCode veya charCode özelliğinde saklanır, hiçbir zaman her ikisinde birden saklanır. Basılan tuş bir karakter (örneğin 'a') üretirse, charCode, harf büyüklüğüne bağlı olarak o karakterin koduna ayarlanır. (yani, charCode, shift tuşunun basılı tutulup tutulmadığını dikkate alır). Aksi takdirde, basılan tuşun kodu keyCode'da saklanır.
Test Aracı
CodePen'de Chris Coyier (@chriscoyier) tarafından hazırlanan Pen event.keyCode test cihazına bakın.
Anahtar kodu değerleri
Buradaki değerleri içeren bir tablo event.which
.
|
|
|
Zell Liew, bu anahtar kodlarından 3'ünün Firefox'ta diğer tarayıcılardan farklı olduğunu fark etti.
;
Firefox'ta 59, diğer tarayıcılarda 186'dır.=
Firefox'ta 61, diğer tarayıcılarda 187'dir.-
Firefox'ta 173, diğer tarayıcılarda 189'dur.
Önemli not: Bu anahtar kodu değerleri yalnızca giriş keydown
ve keyup
olayları sırasında geçerlidir . Mac'te, keypress
olaylar size tamamen farklı bir kod dizisi verir.
Örneğin:
Anahtar | event.which anahtarlamada | event.which tuşa basıldığında |
a | 65 | 97 |
b | 66 | 98 |
c | 67 | 99 |