Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[JavaScript] JavaScript에서 html의 element를 찾아 이벤트 적용하기 본문
Frontend/JavaScript
[JavaScript] JavaScript에서 html의 element를 찾아 이벤트 적용하기
Gaejirang-e 2023. 4. 22. 19:32html에서 element들이 javascript에서는 객체로 다루어진다.
- document.getElementById("아이디"); // Node 한개만 찾는다
- document.getElementByClassName("클래스이름"); // Node를 여러개 찾는다(NodeList)
- document.getElemetnByTagName("태그이름"); // Node를 여러개 찾는다(NodeList)
- querySelector("selector종류"); // Node 한개만 찾는다
- querySelectorAll("selector종류"); // Node가 여러개(NodeList)
- document.getElementByClassName("클래스이름"); // Node를 여러개 찾는다(NodeList)
- document.getElemetnByTagName("태그이름"); // Node를 여러개 찾는다(NodeList)
- querySelector("selector종류"); // Node 한개만 찾는다
- querySelectorAll("selector종류"); // Node가 여러개(NodeList)
onload = function() { // window. 생략
let btnList = document.querySelectorAll("button"); // Node를 여러개 찾는다
btnList.forEach(function(btn, index) { // 하나, 하나 돌며
btn.onmouseover = btnFun; // 이벤트 등록, 함수이름만 넣는다 ()넣지 말라
}
}
이벤트를 등록하는 가장 권장되는 방식, 이벤트리스너(EventListener)
해당 이벤트 처리 핸들러(Handler)를 추가할 수 있는 Object
(이벤트가 발생할 때, 특정함수를 호출한다)
document.querySelector("h2").addEventListener("mouseover", function() { // 이벤트리스너(EventListener) 등록하기
this.style.border = "1px solid red";
});
⚠️ 이벤트리스너(EventListener) 삭제하기: DOM객체.removeEventListener("이벤트종류", 함수명);
🚀 자주 사용하는 이벤트 종류
- (1) 포커스이벤트 (focus, blur)
- (2) 폼 이벤트 (reset, submit)
- (3) 뷰 이벤트 (scroll, resize)
- (4) 키보드 이벤트 (keydown, keyup)
- (5) 마우스이벤트 (mouserover, mouseout, mousemove, cilck, dbclick)
- (6) 드래그 앤 드롭 이벤트 (dragstart, drag, drop)
- (1) 포커스이벤트 (focus, blur)
- (2) 폼 이벤트 (reset, submit)
- (3) 뷰 이벤트 (scroll, resize)
- (4) 키보드 이벤트 (keydown, keyup)
- (5) 마우스이벤트 (mouserover, mouseout, mousemove, cilck, dbclick)
- (6) 드래그 앤 드롭 이벤트 (dragstart, drag, drop)
'Frontend > JavaScript' 카테고리의 다른 글
[jQuery] 트리거(trigger): 이벤트 강제 호출 (0) | 2023.04.22 |
---|---|
[jQuery] FORM Validation on jQuery (0) | 2023.04.22 |
[JavaScript] 비동기화 통신, AJAX (0) | 2023.04.20 |
[jQuery] 동적 엘리먼트에 event를 적용하는 on (0) | 2023.04.20 |
[jQuery] write less, do more: jQuery 기본 (0) | 2023.04.19 |
Comments