메뉴 건너뛰기

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 18330
403 혹시 예전 서적인 "DHTML + 자바스크립트 프로그래밍"의 예제를 받을 수 있는 방법은 없는지요? 2 비만타쿠미 2018.09.26 116
402 한글html 1 키보드 향기 2020.03.29 934
401 한글 타이틀이 깨져 보입니다. 1 안스가리오 2020.01.06 116
400 표와 div span 4 키보드 향기 2020.04.05 109
399 페이지에 첨부하고 싶은 이미지의 위치에대해 궁금합니다 1 정택희 2017.02.13 277
398 페이지 247 에 있는 Open Challenge 05 의 CSS3로 태그 배치하기를 공부하고 있는데 질문드립니다. 1 file 워니고 2018.03.28 3879
397 테스트 관리자 2019.08.30 171
396 태그와 속성 2 tc0712 2021.09.08 72
395 크롬 오디오 자동재생 관련 질문입니다! 1 ^_^ 2018.09.30 449
394 코드 잘못된 부분을 봐주시면 정말 감사하겠습니다 1 file 입문한 사람 2020.04.01 608
393 캔버스 관련 질문 1 원그리기 2021.08.22 101
392 챕터2 연습문제 8번 김석현 2018.04.22 156
391 챕터 3의 10번 문제 1 컴공과 입문 2018.03.20 125
390 책을 종이책으로 구매했는데 1 ddd 2024.03.21 106
389 책을 마치며 7 은성 2017.04.13 492
388 책 151p 3장 오픈챌린지 문제질문입니다. 3 이상민 2019.07.19 239
387 짝수번 정답 3 idididid 2017.12.24 3139
386 질문입니다 1 1213 2018.03.06 420
385 질문드립니다. 1 ㅇㅇ 2020.06.03 306
384 질문 있습니다. 2 2021.08.19 134
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 21 Next
/ 21
위로