<strong>msdn에는 세 가지 차이점이 있습니다. </strong> <br><br>이름 설명 <br><br>onkeypress <br><br>이 이벤트는 사용자가 영숫자 키를 눌렀다 놓을 때 발생합니다. 시스템 버튼(예: 화살표 키, 기능 키)이 인식되지 않습니다. <br><br>onkeyup <br><br>이 이벤트는 사용자가 이전에 누른 키보드 키를 놓을 때 발생합니다. <br><br>onkeydown <br><br>이 이벤트는 사용자가 키보드 키(화살표 키, 기능 키와 같은 시스템 버튼 포함)를 누를 때 발생합니다. <br><br>====================== <br><div class="codetitle"> <span><a style="CURSOR: pointer" data="65639" class="copybut" id="copybut65639" onclick="doCopy('code65639')"><u>코드 복사</u></a></span> 코드는 다음과 같습니다. </div> <div class="codebody" id="code65639"> <br><html> <br><script> <br>function checkForm(){ <br>if(event.keyCode ==13) { <br>event.keyCode =9; <br>} <br>} <br><body> <br><form name ="form1"> ;input type="text" name = "text1" onkeydown = "checkForm()"> <br><input type="button" name = "button1" value="Button"> form> <br></body> <br></html> <br><br> <br>Enter를 누르면 포커스가 텍스트 상자에서 버튼으로 이동합니다. "onkeypress"로 변경하면 포커스가 이동하거나 손실되지 않습니다. 하지만 "onkeyup"으로 변경하면 포커스가 사라지고 페이지가 다시 로드됩니다. <br> </div>테스트 결과 onkeydown 이벤트가 먼저 실행되고 그 다음 onkeypress가 실행되며 마지막으로 onkeyup과 onkeypress가 onkeyup의 실행에 영향을 미치는 것으로 나타났습니다. 이벤트 동료가 3명일 경우 모두 알림인 경우 알림은 2개만 팝업되며, 업 이벤트에 대한 알림은 팝업되지 않습니다. <br><br>셋의 이벤트 응답에는 한 가지 차이점이 있습니다. 즉, onkeydown 및 onkeypress 이벤트에 응답할 때 입력한 문자는 시스템에서 허용되지 않지만 onkeyup에 응답할 때는 입력 스트림이 허용됩니다. 시스템에 의해. onkeydown은 onkeypress보다 먼저 실행되고 위의 예를 기반으로 하면 onkeydown이 트리거될 때 입력 스트림이 곧 시스템에 진입할 것임을 알 수 있습니다. 즉, onkeydown 이벤트가 완료되자마자 입력 스트림이 진입합니다. 시스템이며 변경할 수 없습니다. 따라서 onkeydown 이벤트는 사용자가 누른 키를 변경하는 데 사용할 수 있습니다. onkeypress 이벤트는 입력 스트림이 시스템에 들어간 후 트리거되지만 입력 스트림은 시스템에서 처리되지 않았으며 이때 입력 스트림을 변경할 수 없습니다. time; onkeyup은 시스템에서 처리된 후에 발생합니다.