Kui KeyboardEvent
tulekahjud, saate testida mis klahvivajutust sest sündmus sisaldab teavet, mida saab kirjutada loogika vastu.
document.addEventListener("keydown", function(event) ( console.log(event.which); ))
Näiteks vajutades "a", saate 65
. Ilmselt on kõige parem kirjutada loogika, mille alusel, kuna keyCode ja charCode on keerulised:
Atribuut event.which normaliseerib event.keyCode ja event.charCode. Klaviatuuri klahvide sisestamiseks on soovitatav vaadata sündmust.
Ja:
Klahvivajutuse korral salvestatakse vajutatud klahvi Unicode väärtus kas atribuudis keyCode või charCode, mitte kunagi mõlemas. Kui vajutatud klahv genereerib märgi (nt 'a'), määratakse charCode selle tähemärgi koodile, järgides suurtähtede kasutamist. (st charCode arvestab, kas tõstuklahvi hoitakse all). Vastasel juhul salvestatakse vajutatud klahvi kood keyCode'is.
Testri tööriist
Vaadake Chris Coyieri (@chriscoyier) pliiatsi Event.keyCode testijat CodePenis.
Võtmekoodi väärtused
Siin on tabel, mis sisaldab väärtusi event.which
.
|
|
|
Zell Liew märkas, et 3 neist võtmekoodidest olid Firefoxis erinevad kui ülejäänud brauserid
;
on Firefoxis 59, teistes brauserites aga 186.=
on Firefoxis 61, teistes brauserites aga 187.-
on Firefoxis 173, teistes brauserites aga 189.
Oluline märkus. Need võtmekoodiväärtused kehtivad ainult sündmuste keydown
ja keyup
sündmuste ajal . Macis keypress
annavad sündmused teile täiesti erineva koodikomplekti.
Näiteks:
Võti | event.which võtmelinnas | event.which klahvivajutusega |
a | 65 | 97 |
b | 66 | 98 |
c | 67 | 99 |