onkeypress VS onkeydown

By | 1월 29, 2009

[출처] 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');
  }
}

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments