강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của luj06058044
luj06058044

câu hỏi đã được viết

Bắt đầu phát triển web tương tác đúng cách

nâng cao! Cuộn 3D 22

e.keyCode 질문

Đã giải quyết

Viết

·

971

0

vscode에서 사용은되지만 줄그어지길래 보니까 duplicated 되었다는데. 최근에는

다른방식으로 사용하나요?? 

비슷한 속성값인데 문자열로 출력되는 key 속성이 있던데 이걸많이사용하는지..

인터랙티브-웹javascriptHTML/CSS

Câu trả lời 2

2

안녕하세요, Amen님!

keyCode 기능은 더 이상 권장되지 않습니다. 일부 브라우저에서는 여전히 동작할 수 있지만, 이미 관련 웹 표준에서 제거되었을 수 있으며 삭제되는 과정에 있거나 호환성 목적으로만 보관할 것입니다

사용을 피하시고 가능한 경우 기존 코드를 업데이트하셔야 합니다.

duplicated된 기능은 가급적으로 사용하지 않으시는 것이 좋습니다. 

대체안으로 KeyboardEvent.code 가 사용된다고 합니다.

keyCode 문서는 여기 를 참고해주세요.

대체안인 KeyboardEvent.code 문서는 이 곳 을 참고해주시면 됩니다 :)

밑에는 예제 코드입니다 ! 참고해주세요 .

window.addEventListener("keydown", function(event) {
  if (event.defaultPrevented) {
    return; // Do nothing if event already handled
  }

  switch(event.code) {
    case "KeyS":
    case "ArrowDown":
      // Handle "back"
      updatePosition(-moveRate);
      break;
    case "KeyW":
    case "ArrowUp":
      // Handle "forward"
      updatePosition(moveRate);
      break;
    case "KeyA":
    case "ArrowLeft":
      // Handle "turn left"
      angle -= turnRate;
      break;
    case "KeyD":
    case "ArrowRight":
      // Handle "turn right"
      angle += turnRate;
      break;
  }
Amen님의 프로필 이미지
Amen
Người đặt câu hỏi

자세한 답변 감사드립니다 ( __ ) 

0

e.key === 'ArrowLeft' 와 e.key === 'ArrowRight'로 해결하면 되는군요!

Hình ảnh hồ sơ của luj06058044
luj06058044

câu hỏi đã được viết

Đặt câu hỏi