해결된 질문
작성
·
278
답변 1
0
안녕하세요! 성오님!
event.target으로 들어오는 대상 타겟이 id가 없는 경우도 있기 때문이랍니다!
예를들면, 태그를 클릭해서 실행되는 이벤트가 아닌 이미지 조작 등의 이벤트의 경우에는 대상 id가 없는 경우도 있기 때문이랍니다!
이를 해결하는 방법에는 여러가지 방법이 있는데,
1. 현재까지 배운 방법으로 해결하는 방법(event.target)
2. 이후에 배우게 될 내용으로 해결하는 방법 등이 존재합니다(event.currentTarget)
=> 뒷부분 이벤트버블링
파트에서 event.target과 event.currentTarget의 차이를 배워요!
따라서, 문제를 해결하시기 위해서는
조건을 줘서 event.target에 id가 있을 때만 실행하는 방법
if(event.target instanceof Element) { // event.target은 Element(태그)의
// instance(자식)이다 => 태그에는 id가 있음
console.log(event.target.id) // 에러안남
}
이벤트버블링 파트를 수강 후, event.currentTarget을 사용하는 방법이 있어요!^^