Najnowsze tutoriale tworzenie stron internetowych
 

KeyboardEvent which Property

<Object Event

Przykład

Uzyskać wartość Unicode wciśniętego klawisza klawiatury:

var x = event.which;

Wynikiem X mogą być:

119   // 119 is the character "w"
Spróbuj sam "

Więcej "Try it Yourself" przykłady poniżej.


Definicja i Wykorzystanie

Which właściwość zwraca kod znaku Unicode klawisza, który wywołał onkeypress zdarzenie lub klawisz kod Unicode klawisza, który wywołał onKeyDown lub onkeyup wydarzenie.

Różnica pomiędzy tymi dwoma typami kodów:

  • Kody postaci - liczba, która reprezentuje znak ASCII
  • Główne kody - liczba, która reprezentuje rzeczywistą klawisz na klawiaturze

Typy te nie zawsze oznaczają to samo; Na przykład, małe litery "w" i wielkie litery "W" mają ten sam kod klawiatury, ponieważ klucz jest wciśnięty na klawiaturze jest taki sam (just "W" = the number "87") , ale inna Kod charakter, ponieważ uzyskana postać różni się (albo "w" lub "W" , czyli "119" i „87”) - patrz "More Examples" poniżej lepiej zrozumieć.

Wskazówka: Aby dowiedzieć się, czy użytkownik jest naciśnięcie klawisza wydruku (np "a" lub „5”), zaleca się, aby skorzystać z tej własności na zdarzenia onkeypress. Aby dowiedzieć się, czy użytkownik jest naciśnięcie klawisza funkcyjnego (np "F1" , "CAPS LOCK" lub „Strona”) używać onKeyDown lub onkeyup wydarzenie.

Uwaga: nieruchomość, która nie jest obsługiwana w IE8 i wcześniej. Dla tych wersji przeglądarek, można użyć keyCode nieruchomości. Jednak nieruchomość keyCode nie działa na zdarzenia onkeypress w Firefoksie. Rozwiązania z różnymi przeglądarkami, można użyć następującego kodu:

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

Wskazówka: Aby uzyskać listę wszystkich znaków Unicode, należy badać naszą Kompletna Reference Unicode .

Wskazówka: Jeśli chcesz przekonwertować zwracanej wartości Unicode w znak, użyj fromCharCode() metody.

Uwaga: Ta właściwość jest tylko do odczytu.

Uwaga: Zarówno który i keyCode Właściwość jest tylko dla kompatybilności. Najnowsza wersja specyfikacji DOM Events zalecamy użycie klucza właściwość zamiast (if available) .

Wskazówka: Jeśli chcesz dowiedzieć się, czy "ALT" , "CTRL" , "META" lub "SHIFT" klawisz został naciśnięty, gdy kluczowym wydarzeniem wystąpił użyj altKey , ctrlKey , klawisz meta lub shiftKey nieruchomości.


Wsparcie przeglądarka

Liczby w tabeli określ pierwszą wersję przeglądarki, która w pełni obsługuje właściwość.

Nieruchomość
which tak 9.0 tak tak tak

Składnia

event .which

Szczegóły techniczne

Zwracana wartość: Numer, reprezentujących albo kod znaku Unicode lub kod Unicode klawisza
DOM wersja: DOM Level 2 Events

Przykłady

Więcej przykładów

Przykład

Korzystanie onkeypress i onKeyDown wykazać różnice między kodami znaków i kodów klawiszowych:

<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;
}

Po naciśnięciu "a" klawisz na klawiaturze (not using caps lock) , wynik char i klucz będzie:

Unicode CHARACTER code: 97
Unicode KEY code: 65
Spróbuj sam "

Przykład

Ostrzegać jakiś tekst, jeśli użytkownik naciśnie klawisz 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!");
    }
}
Spróbuj sam "

Przykład

Konwersja wartość Unicode do znaku (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
Spróbuj sam "

Podobne strony

HTML DOM: KeyboardEvent key Property

HTML DOM: KeyboardEvent keyCode Property

HTML DOM: KeyboardEvent charCode Property


<Object Event