2016-08-15 6 views
0

HTML :JS 이벤트 핸들러의 실행 순서

<input class="button" type="button" value="click me"></input> 
<input class="input" type="text"></input> 

자바 스크립트 : I는 입력 필드를 클릭 한 후 버튼을 클릭하면

$(".button").on("click", function(){console.log("clicked");}) 
$(".input").on("blur", function(){console.log("blur");}) 

, 두 개의 이벤트가 해고되었다. 제 질문은 두 사건이 해고되는 순서입니다. blur 메시지가 항상 clicked 앞에 인쇄되는 이유는 무엇입니까? 해당 실행 명령에 대한 관련 문서 또는 정보가 있습니까?

+1

논리적으로 버튼을 클릭하기 전에 입력이 포커스 (흐림)를 잃어 버려야합니다. – aw04

+0

다른 요소에 집중하기 전에 현재 요소에 초점을 맞추지 않아야합니다. 따라서 – Evochrome

+0

논리적으로도 나 혼란 스럽습니다. 버튼을 클릭 할 때 입력이 같은 시간에 포커스를 잃어 버린다. – Sean

답변

0

아니요, 그 때 버튼을 클릭 할 때 버튼 클릭 이벤트와 입력 흐림 이벤트가 동시에 발생하는 것은 아닙니다. 이를 테스트하려면 버튼을 제외한 아무 곳이나 클릭하여 blur 이벤트를 발생시킵니다. 당신은 차이를 볼 수 있습니다.

관련 문제