선생님,
우선 쉽고 재밌는 책 잘 보고 있습니다.
궁금한 사항은,
423쪽 예제 9-20 에서
우측 알트키라는 메세지만 출력되는데요.
e.altLeft 라는 부분이 잘 동작 하는지 궁금합니다.
관련 참조 문서가 있다면 링크도 알려 주시면 좋겠습니다.
선생님,
우선 쉽고 재밌는 책 잘 보고 있습니다.
궁금한 사항은,
423쪽 예제 9-20 에서
우측 알트키라는 메세지만 출력되는데요.
e.altLeft 라는 부분이 잘 동작 하는지 궁금합니다.
관련 참조 문서가 있다면 링크도 알려 주시면 좋겠습니다.
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | 읽어주세요! 연습문제 및 실습문제 정답 공개에 관한 공지입니다. | 관리자 | 2017.06.20 | 18279 |
403 | <li> 1 | 랄라 | 2019.05.29 | 69 |
402 | <script>태그의 위치 1 | 열심히 공부하는 독자 | 2020.08.15 | 58 |
401 | 07장 10번 답좀 알고싶습니다... 2 | abcd | 2017.06.11 | 1088 |
400 | 10장 window.open 질문입니다. 1 | 멍청이 | 2019.08.23 | 379 |
399 | 10장 실습문제 6번 전역변수 설정에 관한 질문 1 | 제발요 | 2019.12.04 | 632 |
398 | 10장 실습문제5번 질문입니다, 1 | asdfdef | 2019.08.30 | 1158 |
397 | 10장 연습문제 10번 질문입니다. 2 | 웹린 | 2022.11.03 | 159 |
396 | 10장 예제 10-8에 오류가 있습니다. 1 | 삼오칠 | 2021.05.22 | 289 |
395 | 10장 오픈챌린지 5 | 은성 | 2017.04.07 | 2247 |
394 | 10장 오픈챌린지 | testr | 2017.11.19 | 888 |
393 | 10장 오픈챌린지 질문입니다. 1 | 질문있어요 | 2019.11.10 | 485 |
392 | 10장 이론문제 10번 질문입니다. 3 | 하늘하 | 2019.05.15 | 849 |
391 | 11장 6번 1 | mj | 2018.11.29 | 67554 |
390 | 11장 6번 | 으엉 | 2019.11.27 | 187610 |
389 | 11장 실습문제 4번 1 | 웹프 | 2020.06.17 | 456 |
388 | 11장 실습문제 6번 arc()문제 | 제발요 | 2019.12.06 | 1093 |
387 | 11장 실습문제 6번 질문입니다. 1 | 메론 | 2018.11.29 | 884 |
386 | 11장 실습문제 7번 응용 | ㅇㅇ | 2020.06.16 | 154 |
385 | 12장 연습문제 4번 HTML 요청 1 | 윤세아 | 2020.06.10 | 641 |
384 | 13-5 하고 13-6 error 1 | WebWeb | 2020.12.09 | 148 |
웹 표준이 변하면서 이 객체의 멤버들 중 몇개가 폐기 처분되었는데, 그 중에 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>