메뉴 건너뛰기

2020.08.16 16:34

이벤트리스너 질문

조회 수 63 댓글 2

안녕하세요 저자님.

열심히 공부하다가 또 왔습니다.

이벤트리스너에 관한 질문드립니다.

 

https://ancandy.github.io/web1/s7%EC%98%A4%EB%A5%98.html

p.385 실습 7번-1 문제 해결중에 

p.363 방식으로 아래와 같이 작성했더니 오류가 발생했습니다.

 imgs[1].onclick='this.style.transform="rotate(90deg)"';

 

Q. 왜 작동이 안되는건가요?

혹시, html태그 내에서 onclick 프로퍼티로 접근할때는 가능하지만,

DOM객체의 onclick 프로퍼티로 접근할때는 함수명만 할당을 해야하는건가요?

?
  • ?
    관리자 2020.08.16 22:35

    DOM객체의 onclick 프로퍼티로 접근할때는 함수명이나 함수를 할당 해야합니다.
    익명의 함수를 사용하면 다음과 같이 할 수 있습니다. 익명의 함수 사용법은 9장 394페이지에 있습니다.
    imgs[1].onclick=function(e) {
    e.target.style.transform="rotate(90deg)"
    }

    여기서 e는 이벤트 객체이고 이벤트 객체로 부터 어느 DOM 객체에 이벤트가 발생하였는지를 알아내기 위해
    e.target을 사용한 것입니다. img[1]과 같은 것들을 가능하면 코드에 넣지 않는 것이 바람직합니다.

    그러니까 함수 change()도 다음과 같이 고치면 좋죠.
    function change(e){
    e.target.style.transform="rotate(90deg)";
    }

    두 이미지에 대해 모두 다음과 같이 하나의 change() 함수를 사용할 수 있슴니다.
    var imgs = document.getElementsByTagName("img");
    imgs[0].onclick=change;
    imgs[1].onclick=change;

    function change(e){
    e.target.style.transform="rotate(90deg)";
    }

  • ?
    열심히 공부하는 독자 2020.08.16 22:44
    답변 감사드립니다! 저자님
    더 열심히 공부해야겠습니다.

QnA

공부하면서 궁금했던 것을 질문해보세요.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 읽어주세요! 연습문제 및 실습문제 정답 공개에 관한 공지입니다. file 관리자 2017.06.20 18304
283 실습문제 7장에 8번 질문 1 abcd 2017.05.09 994
282 실습문제 7장 5번 1 유등등 2020.12.17 714
281 실습문제 7장 2번의 입력된 반대순으로 출력이 넘 힘듭니다 도움좀 주세요 제발 ㅠㅠ 도널드임 2019.05.27 1130
280 실습문제 7장 2번 질문있습니다 1 jobjob 2017.04.04 1459
279 실습문제 6장 6-(1) 어떻게 하는 건가요? 1 초보자 2020.12.23 216
278 실습문제 6장 5번 littlelion 2018.06.20 780
277 실습문제 6장 3번-2 1 어려워 2019.11.15 201
276 실습문제 5장 9번 1 file 2020.10.08 212
275 실습문제 5장 8번 1 file rrr 2018.04.18 412
274 실습문제 5장 3번 254p 1 RVQ 2018.05.10 332
273 실습문제 4장의 8번 2 file ㅁㄴㅇㄹ 2018.12.14 334
272 실습문제 4장 8번 1 2020.09.27 502
271 실습문제 3장 2번, 4장 8번 질문 다시 올려요. littlelion 2018.04.20 1590
270 실습문제 11장 4번 1 ㅎㅇ 2018.12.02 471
269 실습문제 1 키보드 향기 2020.06.07 120
268 실습 문제 4장 4번 문제에 대해서 질문드립니다. 1 ㅇㅇ 2020.10.11 122
267 실습 8장 8번 문제 질문이요! 1 2020.11.03 247
266 스타일 시트 객체 2 한성이 2022.08.09 32
265 스크립트에서 document.write로 표 만들기 질문드립니다. 1 file 입문한 사람 2020.06.08 1114
264 선생님 정말 고맙습니다 재질문도 드리고 싶습니다 file 입문한 사람 2020.04.07 137
목록
Board Pagination Prev 1 ... 2 3 4 5 6 7 8 9 10 11 ... 21 Next
/ 21
위로