[javascript] Event의 구성요소와 등록방법
1)Event의 구성요소
(1)event target (대상)
event가 일어날 객체(요소)를 말한다.
(2)event type
event의 종류를 의미한다. click, scroll 등이 있다.
(3)event handler
event가 발생했을 때 동작하는 코드를 말한다.
2)Event 등록방법
(1)Inline
event target 태그 속성으로 지정함.
<input type="button" onclick="alert('Hello world');" value="button" />
(2)property Listener
event target에 해당하는 객체의 property로 event를 등록하는 것을 말함.
<input type="button" id="target" value="button" />
<script>
var t = document.getElementById('target');
t.onclick = function(){
alert('Hello world');
}
</script>
(3)addEventListener()
event를 등록하는 가장 권장되는 방식이다. 이 방식을 이용하면 여러 개의 event handler를 등록할 수 있음.
addEventListener() 메서드는 이벤트 타입, 이벤트 핸들러 함수, 옵션(생략 가능함)이라는 세 개의 매개변수를 가집니다.
[Javascript] 이벤트(Event)에 관하여
이벤트란? 이벤트(event)는 어떤 사건을 의미한다. 브라우저에서의 사건이란 사용자가 클릭을 했을 '때', 스크롤을 했을 '때', 필드의 내용을 바꾸었을 '때'와 같은 것을 의미한다. 먼저 이러한 이
ooeunz.tistory.com
(4)removeEventListener()
removeEventListener() 메서드를 사용하여 이벤트 리스너를 제거할 수 있습니다.addEventListener() 메서드와 마찬가지로 세 개의 매개변수를 가집니다.
const btnNode = document.getElementById("btn");
const handleClick = function () {
console.log("버튼 클릭");};
btnNode.addEventListener("click", handleClick);
btnNode.removeEventListener("click", handleClick);
[JS]이벤트 핸들러와 이벤트 리스너
이벤트 핸들러와 이벤트 리스너 JavaScript에서 이벤트는 사용자와 웹 페이지간의 상호작용입니다. 예를 들어 티스토리에서 좋아요 버튼을 클릭하거나 네이버 검색 창에서 엔터 키를 누르는 행위
developer-talk.tistory.com
3)인라인방식 및 Property Listener 방식과 addEventListener() 방식간 차이
아래 예시를 통해 알 수 있음. 인라인 방식과 property로 설정하는 경우 앞에 'on' 붙임. addEventListener()는 그렇지 않음.
[HTML]
<element onkeydown="goodFunc()">
[JS]
object.onkeydown = function goodFunc(){ };
object.addEventListener("keydown", goodFunc());