메뉴 건너뛰기

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 18275
283 page 46 마우스 올릴시 이미지 출력 2 file 공부중 2020.09.10 323
282 p.469 6번 질문드립니다. 4 열심히 공부하는 독자 2020.09.08 64
281 open12 질문드립니다. 3 열심히 공부하는 독자 2020.09.08 111
280 value 속성 1 열심히 공부하는 독자 2020.09.04 48
279 오타제보합니다. 1 컴퓨터공학생 2020.08.30 96
278 p.133 질문이요 1 컴퓨터공학생 2020.08.30 74
277 p.133 질문이요 1 컴퓨터공학생 2020.08.30 67
276 p.469 실습 5번문제 4 열심히 공부하는 독자 2020.08.29 92
275 브라우저 크기 변경 1 열심히 공부하는 독자 2020.08.27 59
274 9장 실습9번 문제 2 열심히 공부하는 독자 2020.08.23 106
273 Image객체 질문 4 열심히 공부하는 독자 2020.08.21 79
272 DOM트리 질문 1 열심히 공부하는 독자 2020.08.17 76
271 몽구스 웹서버가 뭔가요? 1 안녕하세요 2020.08.16 101
» 이벤트리스너 질문 2 열심히 공부하는 독자 2020.08.16 63
269 <script>태그의 위치 1 열심히 공부하는 독자 2020.08.15 58
268 open 8 질문 2 열심히 공부하는 독자 2020.08.15 62
267 p.254 3번문제 질문드립니다. 2 열심히 공부하는 독자 2020.08.14 48
266 예제 9-8 질문입니다. 2 모르겠어요 2020.07.31 101
265 예제 6-13 질문이요! 2 궁그미 2020.07.30 145
264 border style 질문 2 궁그미 2020.07.28 41
목록
Board Pagination Prev 1 ... 2 3 4 5 6 7 8 9 10 11 ... 21 Next
/ 21
위로