• 회원가입
  • 로그인
  • 구글아이디로 로그인

[Event] JQ - event ★ - 이벤트 (= 메서드실행 촉발사건) ※ e 매개변수를 명시적으로 전달해야 하는 이유

목차

  1. Event 개념
  2. 문서 객체 모델 (DOM: Document Object Model) 주요 이벤트
  3. Event 구문
  4. Event 메서드 종류
  5. e 매개변수를 되도록이면 명시적으로 전달해야 하는 이유

 

Event 개념

 

1.
jQuery는 HTML 이벤트에 반응하도록 제작되었음. 


2.
HTML 이벤트란, 웹페이지의 반응을 유도하는 접속자들의 다양한 행동 (=action)을 말함.

(예)
ⓐ 해당 요소 위로 마우스 커서를 올리는 경우
ⓑ 라디오 버튼을 선택하는 경우 
ⓒ 해당 요소를 클릭하는 경우.

즉, 

$("선택자").이벤트(); 에서 이벤트 상황이 벌어졌을 때,
선택한 해당 선택자에 미리 정의해둔 메서드 (=메서드)이 일어나게 됨.

※ 
「이벤트가 발생한다.」 / 「이벤트가 발생했다.」 표현을 자주 사용할테니, 잘 숙지하셈!!

(예)
키보드를 누르는 순간, 키보드 누르는 이벤트가 발생.
마우스를 클릭하는 순간, 마우스 클릭 이벤트가 발생.

 

 

문서 객체 모델 (DOM: Document Object Model) 주요 이벤트

Mouse 
Events
Keyboard 
Events
Form 
Events
Document/Window 
Events
click keypress submit load
dblclick keydown change resize
mouseenter keyup focus scroll
mouseleave   blur unload
 

Event 구문

 

$(selector).event(function(){
  // 실행할 method 내용
});

 

selector : 선택자

event() : 이벤트 메서드. 

※ fucntion() { ... } : 이벤트 발생 시, 실행할 내용.


[예제] - p 요소 클릭 시, p 요소 숨기기.

 

$("p").click(function(){
    $(this).hide();
});

 


PS.

JQ에서, 대부분의 DOM 이벤트 (Event)는 등가의 메서드(Method) 갖음.

(즉, Event = Method 성립)
즉, 이벤트 정의 후, 그 이벤트 발생시 실행될 Method 정의함.
※ 
Method는 함수로 주로 표현.

 

 

Event 메서드 종류

 

$(document).ready()
웹페이지가 모두 랜더링 되었을 때 작동

 



click()
선택된 요소를 마우스 왼쪽 버튼이나 스크롤 바퀴 (=중앙 버튼) 클릭했을 때 작동.
※ 오른쪽 버튼 제외

dblclick()
선택된 요소를 마우스 왼쪽 버튼이나 중아 버튼으로 더블클릭했을 때 작동.

 



mouseenter()
선택된 요소 안으로 마우스 커서가 들어올 때 작동.


mouseleave()
선택된 요소 밖으로 마우스 커서가 벗어날 때 작동.


mousedown()
선택된 요소를 마우스 왼쪽, 중앙, 오른쪽 버튼 등으로 눌러졌을 때 작동.  
※ 오른쪽 버튼 포함

mouseup()
선택된 요소를 마우스 왼쪽, 중앙, 오른쪽 버튼 등으로 누른 걸 풀 때 작동해라.

 



hover()
선택된 요소 위로 마우스 커서가 들어올 때와 나갈 때 작동. 
※ hover() = mouseenter() + mouseleave()

focus()
선택된 폼 필드 요소가 focus (=현재 선택된 상태)일 때 작동.

blur()
선택된 폼 필드 요소가 focus (=현재 선택된 상태) 해제될 때 작동.

on()
선택된 요소에 하나 이상의 이벤트 메서드을 실행시킬 때 사용 함.

 

그외도 아주 많은 이벤트 메서드 있음. 더 자세한 건 나중에 소개.

 

e 매개변수를 되도록이면 명시적으로 전달해야 하는 이유

[예제]

 

<script src="http://code.jquery.com/jquery-latest.min.js"></script>


<script>

$(document).on('click','.box',function(e){

    $(this).find('img.hz').replaceWith('<p">홈짱닷컴 Homzzang.com</p>');

});

</script>


<div class="box">

    <img src="https://i.imgur.com/WfW5mBC.png" alt="홈짱" class="hz">

</div>

 

결과보기


e 매개변수 의미

 

1. e 매개변수는 이벤트 객체임.

2. e 매개변수는 이벤트 트리거에 대한 정보를 담고 있음.
(예)

  • 이벤트 유형 (click와 같은)
  • 이벤트가 발생한 요소
  • 마우스 좌표 (clientX 및 clientY)
  • Ctrl, Shift, Alt와 같은 누른 키
  • 마우스 버튼 정보 (which 속성)
  • 등등

 


e 매개변수를 전달해야 하는 이유

 

당장의 코드엔 필요 없더라도, 코드 일관성과 추후 이벤트를 효과적으로 제어 가능하기 때문. (예)

 

 


분류 제목
Event JQ - event.isImmediatePropagationStopped() 메서드 - event.stopI…
Event JQ - event.isPropagationStopped() 메서드 - event.stopPropagatio…
Event JQ - event.namespace 속성 ★★ - 이벤트 네임스페이스 반환.
Event JQ - event.pageX 속성 - 문서 왼쪽 기준해, 마우스커서 수평 위치 반환. (= 이벤트.페이지엑…
Event JQ - event.pageY 속성 - 문서 상단 기준해, 마우스커서 수직 위치 반환. (= 이벤트.페이지와…
Event JQ - event.preventDefault() 메서드 ★★★★★ - 이벤트 발생 시, 요소의 기본동작 …
Event JQ - event.relatedTarget 속성 - 마우스 이동 시, 막 이탈한 관련 요소 반환. (= …
Event JQ - event.result 속성 - 이벤트의 미자막 반환값 반환. (= 이벤트.리절트 속성)
Event JQ - event.stopImmediatePropagation() 메서드 ★★★ - 다른 이벤트 실행 차단…
Event JQ - event.stopPropagation() 메서드 ★★★ - 이벤트 확산(= 버블링)을 방지. (=…
Event JQ - event.target 속성 - 이벤트 촉발시킨 요소 반환/확인. (= event.target속성…
Event JQ - event.timeStamp 속성 - 이벤트 촉발 시간 반환/확인. (= 이벤트.타임스탬프 속성)
Event JQ - event.type 속성 - 촉발된 이벤트 (유형/타입/종류) 반환. (= 이벤트.타입 속성)
Event JQ - event.which 속성 ★ - 이벤트 일으킨 (키보드키/마우스버튼) 번호 반환/확인. (= 이벤…
Event JQ - focus() 메서드 ★★ - 포커스 될 때 이벤트 발생. (= focus 메서드 = 포커스 메서…
Event JQ - focusin() 메서드 ★★ - 해당요소(또는 자식요소) 포커스 될 때 이벤트 발생. (= foc…
Event JQ - focusout() 메서드 ★★ - 해당요소(또는 자식요소) 포커스 잃을 때 이벤트 발생. (= f…
Event JQ - keydown() 메서드 - 키보드키 내려갈 때 이벤트 발생. (= keydown메서드 = 키다운 …
Event JQ - keypress() 메서드 - 키보드키 눌렸을 때 이벤트 발생. (= keypress메서드 = 키프…
Event JQ - keyup() 메서드 - 키보드키 올라갈 때 이벤트 실행 (= keyup메서드 = 키업 메서드) ※…
2/3
목록
찾아주셔서 감사합니다. Since 2012