KeyboardEvent keyCode-ominaisuus
Määritelmä ja käyttö
keyCode-ominaisuus palauttaa laukaisevan onkeypress-tapahtuma näppäimen Unicode-merkkikoodi tai joka laukaisee onkeydown tai onkeyup-tapahtuma näppäimen Unicode-näppäinkoodi.
Kahden koodityypin ero:
- 字符代码 - edustaa ASCII-merkkejä oleva numero
- Näppäinkoodit - edustavat näppäimistön todellisen näppäimen numeroa
Nämä tyypit eivät aina tarkoita samaa asiaa. Esimerkiksi pieni "w" ja suuri "W" näppäimistökoodi ovat samat, koska painettu näppäin on sama ("W" = numero "87"), mutta merkkikoodi on eri, koska resulting merkkikoodi on eri ("w" tai "W", eli "119" tai "87") - katso alla olevat esimerkit, jotta voit ymmärtää tämän paremmin.
Vinkki:Jos haluat tietää, onko painettu näppäin tulostettava (esim. "a" tai "5"), käytä tätä ominaisuutta onkeypress -tapahtumassa. Jos haluat tietää, onko painettu toiminnallinen näppäin (esim. "F1", "CAPS LOCK" tai "Home"), käytä onkeydown tai onkeyup -tapahtumia.
Huomautus:Firefoxissa keyCode -ominaisuus ei vaikuta onkeypress -tapahtumaan (palauttaa vain 0). Yksilöllisille selaimille suositellaan which -ominaisuusKäytä keyCode:n yhdessä
var x = event.which || event.keyCode; // Käytä which tai keyCode riippuen selaimen tuesta
Vinkki:Kaikkien Unicode-merkkien luettelo löytyy Täydellinen Unicode-viite.
Vinkki:Jos haluat muuntaa Unicode-arvon merkiksi, käytä fromCharCode() -menetelmä.
Huomautus:Tämä ominaisuus on luettavuudessa.
Huomautus:keyCode ja which -ominaisuudet tarjotaan yhteensopivuuden vuoksi. Uusimmat DOM-tapahtumastandardit suosittelevat käyttämään key-ominaisuutta (jos saatavilla).
Vinkki:Jos haluat tietää, onko "ALT", "CTRL", "META" tai "SHIFT"-näppäin painettu tapahtumahetkellä, käytä altKeyjactrlKey/ jametaKey tai shiftKey Ominaisuudet.
Esimerkki
Esimerkki 1
Hanki painetun näppäimen Unicode-arvo:
var x = event.keyCode;
Esimerkki 2
Käytä onkeypress ja onkeydown -ominaisuuksia osoittaaksesi eroa merkkikoodien ja näppäimistökoodien välillä:
<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)"> function uniCharCode(event) { var char = event.which || event.keyCode; document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " + char; } function uniKeyCode(event) { var key = event.keyCode; document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key; }
Painamalla näppäimistön "a"-näppäintä (ei käytetä Capslockia) char ja key-tulosten tulisi olla:
Unicode CHARACTER code: 97 Unicode KEY code: 65
Esimerkki 3
Jos käyttäjä painaa Escape-näppäintä, näytä joitakin tekstejä:
<input type="text" onkeydown="myFunction(event)"> function myFunction(event) { var x = event.keyCode; if (x == 27) { // 27 on ESC-näppäin alert ("Painit Escape-näppäimen!"); } }
Esimerkki 4
Muunna Unicode-arvo merkiksi (ei sovellu toiminnallisille näppäimille):
var x = event.keyCode; // Hae Unicode-arvo var y = String.fromCharCode(x); // Muunna arvo merkiksi
Syntaksi
event.keyCode
Tekninen yksityiskohta
Palautusarvo: | Numeroinen arvo, joka edustaa Unicode-merkkikoodia tai Unicode-näppäinkoodia. |
---|---|
DOM-versio: | DOM Level 2 Events |
Selaimen tuki
Ominaisuudet | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
keyCode | Tuki | Tuki | Tuki | Tuki | Tuki |
Liittyvät sivut
HTML DOM -viittauskirja:KeyboardEvent key-ominaisuus
HTML DOM -viittauskirja:KeyboardEvent charCode-ominaisuus
HTML DOM -viittauskirja:KeyboardEvent which-ominaisuus