[출처] onkeypress VS onkeydown|작성자 널리즘
onkeypress 이벤트 발생시 event.keyCode 값과
onkeydown 이벤트 발생시 event.keyCode 값이 다르다.
직접 테스트 해보면 되겠지만..
결과를 미리 말하면
keydown 에서는 대소문자 구분이 없다.
즉 a 를 눌러도 A 를 눌러도 모두 A 로 인식된다.
down 은 자판 기준
press 는 입력 기준인듯 하다.
이것땜시 한참 헤맸네 --a
아래는 테스트 해볼 source 들
onkeypress="javascript:capslock(event);"
onkeydown="javascript:capslock(event);"
function capslock(e) {
var myKeyCode=0;
var myShiftKey=false;
if ( window.event ) { // IE
myKeyCode=e.keyCode; myShiftKey=e.shiftKey;
} else if (e.which) { // netscape ff opera
myKeyCode=e.which; myShiftKey=( myKeyCode == 16 ) ? true : false;
}
if ( ( myKeyCode >= 65 && myKeyCode <= 90 ) && !myShiftKey ) {
showObject('capslockNotice');
} else if ( ( myKeyCode >= 97 && myKeyCode <= 122 ) && myShiftKey ) {
showObject('capslockNotice');
} else {
hideObject('capslockNotice');
}
}