최신 웹 개발 튜토리얼
 

KeyboardEvent which Property

<이벤트 객체

누른 키보드의 키의 유니 코드 값을 가져옵니다 :

var x = event.which;

X의 결과가 될 수있다 :

119   // 119 is the character "w"
»그것을 자신을 시도

"Try it Yourself" 아래의 예.


정의 및 사용

하는 속성은 트리거 키의 유니 코드 문자 코드를 반환 때 onKeyPress 이벤트 또는 트리거 키의 유니 코드 키 코드 에 onKeyDown 또는 onKeyUp에 이벤트를.

두 코드 유형의 차이 :

  • 문자 코드 - ASCII 문자를 나타내는 숫자
  • 키 코드 - 키보드의 실제 키를 나타내는 숫자

이 유형은 항상 같은 일을 의미하지 않는다; 예를 들면, 하부 케이스 "w" 와 상부 케이스는 "W" 키보드 누르는 키가 동일하기 때문에, 동일한 키보드 코드가 (just "W" = the number "87") 다른하지만 문자 코드 결과 문자이기 때문에 다른 (중 "w" 또는 "W" , 인 "119" "87"이상) - 참조 "More Examples" 아래에 더 잘 이해할 수 있습니다.

팁 : 사용자가 인쇄 키 (예 누르면되고 있는지 확인하려면 "a" 또는 "5"), 때 onKeyPress 이벤트에이 속성을 사용하는 것이 좋습니다. 사용자가 기능 키를 눌러 지 알아 보려면 (예를 들어, "F1" , "CAPS LOCK" 에 onKeyDown 또는 onKeyUp에 이벤트를 사용 또는 "홈").

참고 :있는 호텔 인은 IE8에서 지원 및 이전되지 않습니다. 이 브라우저 버전의 경우, 사용할 수있는 키 코드 속성을. 그러나, 키 코드 속성은 파이어 폭스의 때 onKeyPress 이벤트에서 작동하지 않습니다. 크로스 브라우저 솔루션의 경우, 다음과 같은 코드를 사용할 수 있습니다 :

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

팁 : 모든 유니 코드 문자의 목록은 우리의 연구하시기 바랍니다 완전한 유니 코드 참조 .

팁 : 문자로 반환 된 유니 코드 값을 변환 할 경우, 사용 fromCharCode() 메소드를.

참고 :이 속성은 읽기 전용입니다.

참고 : 어떤 코드와 키 코드 특성 모두가 단지 호환성을 위해 제공됩니다. DOM 이벤트 사양의 최신 버전은 사용하는 것이 좋습니다 대신 속성을 (if available) .

팁 : 당신이 있는지 여부를 찾으려면 "ALT" , "CTRL" , "META" 또는 "SHIFT" 키는 키 이벤트가 발생했을 때 사용 누르기 Alt 키 , ctrlKey , metaKey 또는 shiftKey 속성을.


브라우저 지원

테이블의 숫자는 완전히 속성을 지원하는 최초의 브라우저 버전을 지정합니다.

재산
which 9.0

통사론

event .which

기술적 세부 사항

반환 값 : 유니 코드 문자 코드 또는 유니 코드 키 코드 중 하나를 나타내는 번호,
DOM 버전 : DOM 레벨 2 이벤트

예

더 예

문자 코드와 키보드 코드의 차이점을 보여줍니다 때 onKeyPress onKeyDown에 사용 :

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

가압 할 때 "a" 키보드의 키 (not using caps lock) , 문자 키가 될 것입니다 결과를 :

Unicode CHARACTER code: 97
Unicode KEY code: 65
»그것을 자신을 시도

사용자가 Esc 키를 누를 때 텍스트를 경고 :

<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!");
    }
}
»그것을 자신을 시도

문자에 유니 코드 값을 변환 (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
»그것을 자신을 시도

관련 페이지

HTML DOM 참조 : KeyboardEvent key Property

HTML DOM 참조 : KeyboardEvent keyCode Property

HTML DOM 참조 : KeyboardEvent charCode Property


<이벤트 객체