메뉴 건너뛰기

2019.06.27 10:50

423쪽, 예제9-20

조회 수 118 댓글 1

선생님,

우선 쉽고 재밌는 책 잘 보고 있습니다.

궁금한 사항은,

423쪽 예제 9-20 에서


우측 알트키라는 메세지만 출력되는데요.

e.altLeft 라는 부분이 잘 동작 하는지 궁금합니다.

관련 참조 문서가 있다면 링크도 알려 주시면 좋겠습니다.

?
  • ?
    관리자 2019.06.30 18:31
    key 관련 이벤트가 발생했을 때 이벤트 객체의 타입은 KeyboardEvent 라는 것입니다.
    웹 표준이 변하면서 이 객체의 멤버들 중 몇개가 폐기 처분되었는데, 그 중에 altLeft, ctrlLeft, shiftLeft 등이 포함되어 있네요.
    익스플로러의 예전 버전에서는 잘 동작하였는데 현재 버전에서는 이들이 작동하지 않습니다.
    이들 대신 KeyboardEvent 객체에 다른 멤버들이 이들의 역할을 하는데
    바로 code 라는 프로퍼티입니다.
    code는 눌러진 키의 이름을 알려주는 read-only 속성으로 문자열 값입니다.
    그래서 예제 9-20을 다음과 같이 수정하면 됩니다.
    다음 출간시에는 예제를 모두 수정해놓아야겠습니다.
    덕분에 놓치고 있었던 것들을 바로 잡을 수 있었습니다. 감사!

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>키 이벤트</title>
    <script>
    function whatKeyDown(e) {
    var str = "";
    var div = document.getElementById("div");
    div.innerHTML = ""; // div 객체 내용을 지운다.
    if(e.altKey) {
    str += e.code + " 키가 눌러졌습니다.";
    str += "<br>";
    }

    if(e.shiftKey) {
    str += e.code + " 키가 눌러졌습니다.";
    str += "<br>";
    }

    if(e.ctrlKey) {
    str += e.code + " 키가 눌러졌습니다.";
    str += "<br>";
    }

    str += String.fromCharCode(e.keyCode) + "키가 눌려졌습니다."
    div.innerHTML = str; // div 객체에 html 문서 조각을 출력한다.
    }
    </script>
    </head>
    <body>
    <h3>키 리스너와 키 이벤트 객체의 프로퍼티</h3>
    <hr>
    텍스트 창에 키를 눌러 보세요. Alt, Shift, Ctrl 키도 가능합니다.<br>
    <input type="text" id="text" onkeydown="whatKeyDown(event)">
    <div id="div" style="background-color:skyblue; width:250px; height:50px">
    </div>
    </body>
    </html>

QnA

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

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 읽어주세요! 연습문제 및 실습문제 정답 공개에 관한 공지입니다. file 관리자 2017.06.21 18173
182 오픈챌린지10번 재질문입니다. 2 이상 2019.08.31 266
181 테스트 관리자 2019.08.30 170
180 게시판QnA질문입니다. 4 file asdf 2019.08.30 182
179 교재 468page 실습문제 2-2번 질문입니다. 3 세린 2019.08.24 255
178 10장 window.open 질문입니다. 1 멍청이 2019.08.23 376
177 432PAGE 9장 실습문제 9번 재질문올립니다. 2 asdfSDF 2019.08.23 154
176 465page 오픈챌린지10장 질문입니다. 2 asdf 2019.08.23 413
175 432페이지 9장 실습문제9번 질문입니다. 1 asdf 2019.08.22 266
174 425페이지 오픈챌린지09번 질문입니다. 1 멍청이 2019.08.22 176
173 교재425page 9장 오픈챌린지 질문입니다. [재수정해서 올립니다.] 3 ㅁㄴㅇㄻㄴㅇㄹ 2019.08.21 769
172 교재 413page 질문입니다. 1 ㅁㅇㄻㄴㅇㄹ 2019.08.20 98
171 교재403page 예제9-8 코드 질문입니다. 1 asdf 2019.08.19 101
170 385p 8장 실습문제 07번 질문입니다. 1 12345 2019.08.16 615
169 384page 8장 실습문제5번 질문입니다. 6 1234 2019.08.16 436
168 377page 8장 오픈챌린지 질문입니다.(다시 질문 올립니다.) 2 멍청이 2019.08.15 359
167 361page 예제 8 -2 질문입니다. 1 ㅁㄴㅇㄻㄴㅇㄹ 2019.08.14 67
166 책 151p 3장 오픈챌린지 문제질문입니다. 3 이상민 2019.07.19 232
165 배경슬라이드가 뭔지 추가설명하겠습니다 2 hansung 2019.06.27 92
» 423쪽, 예제9-20 1 사랑나눔 2019.06.27 118
163 자바스크립트로 배경이미지슬라이드 만들어볼려고 열심히 노력하는데 1 hansung 2019.06.24 219
목록
Board Pagination Prev 1 ... 7 8 9 10 11 12 13 14 15 16 ... 21 Next
/ 21
위로