javascript를 한동안 안하다가 오래간만에 키를 눌렀을때, 누른 키의 값을 가져와 특정 키값을 눌렀을때 다르게 표현 하는

스크립트를 만들었는데.... 키코드를 가져오는 방법으로  event.keyCode로 사용 하였습니다.


그런데, IE, chrome에서는 잘 되는데 firefox에서는 안되는 것이였습니다. ㅡㅡ;


왜 안될까? 제가 알고 있는게 event.keyCode밖에 없는데 다른게 또 있는걸까??

구글링 하면서 한참을 찾았습니다.


찾다보니 event.which라는게 있더군요...

아래 링크를 참조 하세요.

http://www.w3schools.com/jsref/event_key_which.asp


어떤 브라우저는 event.keyCode를 어떤 브라우저는 event.which를 사용 하던군요.

브라우저를 다 지원 하려면 아래와 같이 코딩을 하면 됩니다.

var x = event.which || event.keyCode; 



[샘플코드]

<!DOCTYPE html>
<html>
<body>
<p>KEY code is : <span id="demo"></span></p>
 
 
<script>
 
document.onkeydown	= keyDown;
 
function keyDown(event) {
    var key = event.which || event.keyCode;
    document.getElementById("demo").innerHTML =  key;
}
</script>
 
</body>
</html>



실행 한 다음  아무키나 누르면 누른 키에 대한 키 코드가 표시 됩니다.

제가 테스트 한 브라우저는 IE, chrome, firefox에서 모두 잘 되었습니다.


감사합니다.