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

[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 매개변수를 전달해야 하는 이유

 

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

 

 

방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

분류 제목
Event JQ - event ★ - 이벤트 (= 메서드실행 촉발사건) ※ e 매개변수를 명시적으로 전달해야 하는 이유
Event JQ - $(document).ready() 메서드 ★ - 문서로드완료후 실행 (= ready메서드 = 다…
Event JQ - click() 메서드 ★ - click 이벤트발생/함수실행. (= click메서드 = 클릭 메서드…
Event JQ - dblclick() 메서드 ★ - dblclick 이벤트발생/함수실행. (= dblclick메서드 …
Event JQ - mouseenter() 메서드 ★★★ - mouseenter 이벤트발생/함수실행. (= mousee…
Event JQ - mouseleave() 메서드 ★ - mouseleave 이벤트발생/함수실행 (= mouseleav…
Event JQ - mousedown() 메서드 - mousedown 이벤트발생/함수실행. (= mousedown메서…
Event JQ - mouseup() 메서드 - mouseup 이벤트발생/함수실행. (= mouseup메서드 = 마우스…
Event JQ - hover() 메서드 ★ - hover 이벤트발생/함수실행. (= hover메서드 = 허버 메서드)
Event JQ - blur() 메서드 ★ - 포커스 해제/제거(= blur메서드 = 블러메서드) ※ 포커스 시 아웃…
Event JQ - on() 메서드 ★★★★★ - 이벤트핸들러 부착 (= 여러이벤트・여러메서드 함께실행 = 이벤트부착…
Event JQ - bind() 메서드 - JQ 3.0 폐기예고. / 요소에 이벤트 부착. (= bind메서드 = 바인…
Event JQ - change() 메서드 ★★★ - 입력값 변동/변화 시 이벤트 발생. (= change메서드 = …
Event JQ - delegate() 메서드 - JQ 3.0 폐기예고. / 하위요소(자식요소)에 이벤트핸들러 부착. …
Event JQ - die() 메서드 - JQ 1.7 폐기예고, JQ 1.9 폐기완료. / 이벤트 제거. (= die메…
Event JQ - error() 메서드 - JQ 1.8 폐기예고. JQ 3.0 폐기완료. / 에러 이벤트 촉발 + 에…
Event JQ - event.currentTarget 속성 - 현재 이벤트 요소 반환. (= 이벤트.커런트타겟 속성)
Event JQ - event.data 속성 - 이벤트 메서드에 전달된 값을 반환. (=이벤트.데이터 속성) ※ 데이터…
Event JQ - event.delegateTarget 속성 ★ - 현재 호출된 이벤트 핸들러가 부착된 요소 반환. …
Event JQ - event.isDefaultPrevented() 메서드 - event.preventDefault()…
1/3
목록
찾아주셔서 감사합니다. Since 2012