Ultimele tutoriale de dezvoltare web
 

KeyboardEvent which Property

<Eveniment obiect

Exemplu

Ia valoarea Unicode a tastei tastatură apăsată:

var x = event.which;

Rezultatul x ar putea fi:

119   // 119 is the character "w"
Încearcă - l singur »

Mai multe "Try it Yourself" - "Try it Yourself" exemplele de mai jos.


Definiție și utilizare

Which Proprietatea returnează codul de caractere Unicode al cheii care a declanșat onkeypress eveniment, sau codul cheie Unicode al cheii care a declanșat onkeydown sau onkeyup eveniment.

Diferența dintre cele două tipuri de cod:

  • Codurile de caractere - Un număr care reprezintă un caracter ASCII
  • Codurile cheie - Un număr care reprezintă o cheie reală de pe tastatură

Aceste tipuri nu înseamnă întotdeauna același lucru; de exemplu, un caz mai mic "w" și un caz superior "W" au același cod de tastatură, deoarece cheia care este apăsată pe tastatură este aceeași (just "W" = the number "87") , dar un alt cod de caractere , deoarece caracterul rezultat este diferit (fie "w" sau "W" , care este "119" sau „87“) - a se vedea "More Examples" de mai jos pentru a înțelege mai bine.

Sfat: Pentru a afla dacă utilizatorul este apăsarea unei taste de imprimat ( de exemplu , "a" sau „5“), se recomandă să utilizați această proprietate asupra evenimentului onkeypress. Pentru a afla dacă utilizatorul este apăsarea unei taste funcționale ( de exemplu , "F1" , "CAPS LOCK" sau „Home“) utilizați onkeydown sau onkeyup eveniment.

Notă: care proprietatea nu este acceptat în IE8 și versiunile anterioare. Pentru aceste versiuni de browser, puteți utiliza Cod de acces la proprietate. Cu toate acestea, proprietatea keycode nu funcționează pe evenimentul onkeypress în Firefox. Pentru o soluție cross-browser, puteți folosi următorul cod:

var x = event.which || event.keyCode;  // Use either which or keyCode , depending on browser support

Sfat: Pentru o listă cu toate caracterele Unicode, vă rugăm studiul nostru Unicode complet de referință .

Sfat: Dacă doriți să convertiți valoarea Unicode returnată într - un caracter, folosiți fromCharCode() metoda.

Notă: Această proprietate este read-only.

Notă: Atât care și keycode proprietatea este prevăzută numai pentru compatibilitate. Cea mai recentă versiune a specificațiilor DOM Evenimente recomandăm utilizarea cheie de proprietate în loc (if available) este (if available) .

Sfat: Dacă doriți să aflați dacă "ALT" , "CTRL" , "META" sau "SHIFT" tasta a fost apăsată atunci când un eveniment cheie a avut loc, utilizați altKey , ctrlKey , metaKey sau shiftKey proprietate.


Suport pentru browser-

Numerele din tabel specifica prima versiune de browser care acceptă pe deplin proprietatea.

Proprietate
which da 9 da da da

Sintaxă

event .which

Detalii tehnice

Întoarcere Valoare: Un număr, care reprezintă fie un cod de caractere Unicode sau codul cheie Unicode
DOM Versiune: DOM Level 2 Evenimente

Exemple

Mai multe exemple

Exemplu

Utilizarea onkeypress și onkeydown pentru a demonstra diferențele între codurile de caractere și codurile de la tastatură:

<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)">

function uniCharCode(event) {
    var char = event.which || event.keyCode; // event.keyCode is used for IE8 and earlier
    document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " + char;
}

function uniKeyCode(event) {
    var key = event.which || event.keyCode; // event.keyCode is used for IE8 and earlier
    document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key;
}

Când se apasă "a" tasta de pe tastatură (not using caps lock) , rezultatul char și cheie va fi:

Unicode CHARACTER code: 97
Unicode KEY code: 65
Încearcă - l singur »

Exemplu

Alerta un text în cazul în care utilizatorul apasă tasta Escape:

<input type="text" onkeydown="myFunction(event)">

function myFunction(event) {
    var x = event.which || event.keyCode; // event.keyCode is used for IE8 and earlier
    if (x == 27) {  // 27 is the ESC key
        alert ("You pressed the Escape key!");
    }
}
Încearcă - l singur »

Exemplu

Conversia valoarea Unicode într - un caracter (does not work for function keys) :

var x = event.which || event.keyCode;   // Get the Unicode value
var y = String.fromCharCode(x);         // Convert the value into a character
Încearcă - l singur »

Pagini similare

HTML DOM referință: KeyboardEvent key Property

HTML DOM referință: KeyboardEvent keyCode Property de KeyboardEvent keyCode Property

HTML DOM referință: KeyboardEvent charCode Property


<Eveniment obiect