목차
문자코드
웹 프론트엔드 JS 튜토리얼 자바스크립트 이벤트 학습 11장 키 누름 감지_자바스크립트 기술

자바스크립트 이벤트 학습 11장 키 누름 감지_자바스크립트 기술

May 16, 2016 pm 06:34 PM
event 단추 발각

첫 번째 문제는 키 이벤트에 대한 표준이 없다는 것입니다. 키보드와 같은 입력 장치를 포함하는 이벤트 모델은 향후 DOM 사양에서 설명됩니다.

알았듯이 브라우저가 처음 설계되었을 때는 표준이 없었습니다. 모두가 실험만 했을 뿐 최종 제품은 유용했지만 확실히 호환성 문제가 발생했습니다. 키 입력 문제도 예외는 아닙니다. 사용자가 누른 키를 감지하는 두 가지 속성이 있습니다. 두 속성이 모두 필요한 데는 타당한 이유가 있지만 모든 브라우저가 이를 지원하는 것은 아닙니다.

또한 키 누르기, 키다운, 키업 간에는 몇 가지 중요한 차이점이 있습니다.

마지막으로 Windows와 Mac의 차이점은 Windows보다 Mac에서 사용자가 어떤 키를 눌렀는지 감지하는 것이 N배 더 어렵습니다.

keyCode 및 charCode
사용자가 어떤 키를 눌렀는지 감지할 수 있는 두 가지 속성은 keyCode와 charCode입니다. 간단히 말하면, keyCode는 사용자가 키보드에서 실제로 누른 키를 감지하는 데 사용되는 반면, charCode는 입력된 문자의 ASCII 코드를 제공합니다. 주의해야 할 몇 가지 작은 문제가 있습니다. 대문자 A와 소문자 a의 keyCode는 키보드의 동일한 키이기 때문에 동일하지만 charCode는 두 개의 다른 문자이기 때문에 다릅니다.

IE와 Opera는 charCode를 지원하지 않습니다. 그러나 keyCode에 문자 정보를 저장하지만 onkeypress의 경우에만 해당되며 onkeydown/up의 경우에는 키 정보가 포함됩니다.

문자 및 숫자 키
간단한 예부터 시작해 보겠습니다. 소문자 a의 ASCII 코드는 97이고 대문자 a의 ASCII 코드는 65입니다. 따라서 두 경우 모두 사용자가 키보드에서 동일한 키를 눌렀을 때 키 값이 65(대문자 A와 동일)

keyCode
인 경우는 언제입니까?

image

문자코드

image
따라서 onkeydown/up의 경우 keyCode에서 키 값을 가져올 수 있습니다. onkeypress의 경우 문자 값을 얻으려면 evt.charCode || evt.keyCode를 사용해야 합니다.

구두점
구두점 키를 테스트하지 않기로 결정했습니다. 나는 이것이 브라우저 및 운영 체제뿐만 아니라 키보드 설정 및 기본 언어와도 관련이 있다고 생각합니다. 저는 주로 네덜란드 버전의 Windows를 사용하기 때문에 미국 버전의 101키 키보드와 큰 차이가 있어도 놀라지 않을 것입니다.

예를 들어 Shift를 누르면 결과는 <여야 하는데 제가 테스트한 ASCII 코드 결과는 '?'입니다. 이 문제를 발견했을 때 구두점 키 문제로 시간을 낭비하지 않기로 결정했습니다.

특수 키
기능 키는 인쇄할 수 없지만 특정 기능을 갖는 키입니다. 예를 들어 Shift, ESC, Enter 등은 모두 기능 키입니다.

일부 참고 사항:
1. 일반적으로 Mac의 안정성은 Windows보다 낮으며 일부 키가 감지되지 않을 수 있습니다

2. IE에서는 키 누르기 이벤트가 발생하지 않습니다. 다음 키: 삭제, 종료, Enter, Esc, 기능 키, 홈, 삽입, pageUp/Down 및 탭.

3. onkeypress 이벤트에서 Safari는 삭제, 종료, 기능 키, home 및 pageUp.Down 키에 매우 이상한 keyCode 값을 제공합니다. 그러나 onkeydown/up에서는 정상입니다.

4. Opera를 제외하고 Mac에서는 Alt, Cmd, Ctrl 및 shfit 키를 감지할 수 없습니다. 그러나 altKey, ctrlKey, shfitKey 속성을 사용할 수 있습니다.

이러한 키를 감지해야 하는 경우 onkeydown/up에서 keyCode를 감지하고 다운로드하면 됩니다. onkeypress 및 charCode는 잊어버리세요.

원문 말미에는 방대한 핵심값 목록이 있으며, 관심 있는 어린이들이 움직일 수 있는 테스트 박스도 있습니다.
번역 주소: http://www.quirksmode.org/js/keys.html

재인쇄를 위해 다음 정보를 보관해 주세요.
저자: Beiyu(tw:@rehawk)

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

<gum> : Bubble Gum Simulator Infinity- 로얄 키를 얻고 사용하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
Nordhold : Fusion System, 설명
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora : 마녀 트리의 속삭임 - Grappling Hook 잠금 해제 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

낙상 감지, 골격점 인간 행동 인식을 기반으로 코드의 일부가 Chatgpt로 완성됨 낙상 감지, 골격점 인간 행동 인식을 기반으로 코드의 일부가 Chatgpt로 완성됨 Apr 12, 2023 am 08:19 AM

여러분, 안녕하세요. 오늘 저는 넘어짐 감지 프로젝트를 여러분과 공유하고 싶습니다. 정확하게는 골격점을 기반으로 한 인간의 움직임 인식입니다. 이는 대략 3단계로 나뉩니다: 인체 인식, 인체 골격 지점 동작 분류 프로젝트 소스 코드가 패키지되어 있습니다. 획득 방법은 기사 끝부분을 참조하세요. 0. chatgpt 먼저 모니터링되는 비디오 스트림을 가져와야 합니다. 이 코드는 상대적으로 고정되어 있습니다. chatgpt가 작성한 코드를 chatgpt가 직접 완성하도록 할 수 있으며 문제가 없으며 직접 사용할 수 있습니다. 그러나 나중에 mediapipe를 사용하여 인간의 뼈대 지점을 식별하는 등의 비즈니스 작업에 관해서는 chatgpt에서 제공하는 코드가 올바르지 않습니다. 나는 chatgpt를 비즈니스 로직과 독립적인 도구 상자로 사용할 수 있다고 생각합니다. 이를 C에 넘겨볼 수 있습니다.

Windows 11로 업그레이드할 수 없는 i7-7700에 대한 솔루션 Windows 11로 업그레이드할 수 없는 i7-7700에 대한 솔루션 Dec 26, 2023 pm 06:52 PM

i77700의 성능은 win11을 실행하기에 충분하지만 사용자는 i77700을 win11로 업그레이드할 수 없다는 것을 알게 됩니다. 이는 주로 Microsoft에서 부과한 제한 사항 때문이므로 이 제한 사항을 건너뛰는 한 설치할 수 있습니다. i77700은 win11로 업그레이드할 수 없습니다. 1. Microsoft에서는 CPU 버전을 제한하기 때문입니다. 2. Intel의 8세대 이상 버전만 win11로 직접 업그레이드할 수 있습니다. 3. 7세대인 i77700은 win11의 업그레이드 요구 사항을 충족할 수 없습니다. 4. 하지만 i77700은 성능면에서 win11을 완벽하게 원활하게 사용할 수 있습니다. 5. 따라서 이 사이트의 win11 직접 설치 시스템을 사용할 수 있습니다. 6. 다운로드가 완료되면 파일을 마우스 오른쪽 버튼으로 클릭하고 "로드"합니다. 7. 더블클릭하여 "원클릭"을 실행합니다.

나한테 무슨 열쇠가 있어? 나한테 무슨 열쇠가 있어? Jun 21, 2023 am 11:31 AM

l 위에는 키보드 왼쪽의 Shift 키가 있습니다. 여기서 l은 r과 반대되는 왼쪽을 의미합니다.

Redmi K40 Pro의 뒤로 키 진동 기능을 끄는 방법은 무엇입니까? 리턴 키 설정 가이드 Redmi K40 Pro의 뒤로 키 진동 기능을 끄는 방법은 무엇입니까? 리턴 키 설정 가이드 Jan 09, 2024 am 09:58 AM

많은 친구들은 휴대폰의 키 진동 기능을 좋아하지 않습니다. 주로 실용적이지 않고 상대적으로 말하면 더 많은 전력을 소비하기 때문입니다. 오늘은 Redmi K40Pro의 주요 진동을 끄는 방법과 Redmi 휴대폰에서 복귀 버튼을 설정하는 방법에 대한 튜토리얼을 알려 드리겠습니다. Redmi K40Pro에서 키 진동을 끄는 방법은 다음 단계를 따르세요. 1. 휴대폰의 설정 메뉴를 엽니다. 2. 설정 메뉴에서 "소리 및 진동" 옵션을 찾으세요. 3. "소리 및 진동" 옵션에서 "키 진동" 설정을 찾으세요. 4. "키 진동" 설정을 클릭한 다음 이 기능을 끄십시오. Redmi 휴대폰의 리턴 키 설정은 다음 단계를 따르세요. 1. 휴대폰의 설정 메뉴를 엽니다. 2. 에

MIT의 최신 걸작: GPT-3.5를 사용하여 시계열 이상 탐지 문제 해결 MIT의 최신 걸작: GPT-3.5를 사용하여 시계열 이상 탐지 문제 해결 Jun 08, 2024 pm 06:09 PM

오늘은 지난 주 MIT에서 발표한 기사를 소개하고자 합니다. GPT-3.5-turbo를 사용하여 시계열 이상 탐지 문제를 해결하고, 시계열 이상 탐지에서 LLM의 효율성을 초기에 검증한 내용입니다. 전체 과정에 미세한 조정은 없으며, 이상 탐지를 위해 GPT-3.5-turbo를 직접 사용하는 것이 이 글의 핵심이다. LLM이 이상 탐지 작업을 해결하도록 하는 프롬프트 또는 파이프라인입니다. 이 작품을 자세히 소개하겠습니다. 이미지 논문 제목: Large Languagemodelscanbezero-shotanomalydete

Win11에서 게임이 원활하게 진행되도록 Shift 키를 누른 후 입력이 안되는 문제를 해결하는 방법 Win11에서 게임이 원활하게 진행되도록 Shift 키를 누른 후 입력이 안되는 문제를 해결하는 방법 Dec 24, 2023 am 10:33 AM

게임을 하는 많은 친구들이 Shift 키를 눌렀을 때 입력하는 문제에 직면했다고 생각합니다. 이는 시스템의 기본 입력 방법 전환 키가 Shift이기 때문에 키를 수정하여 이 문제를 해결할 수 있습니다. 시도해 보세요. win11에서 게임을 할 때 Shift 키를 눌러 입력할 수 있습니다. 첫 번째 단계는 키보드에서 "Win" + "i"를 눌러 설정을 여는 것입니다. 두 번째 단계는 왼쪽 열의 "시간 및 언어"를 클릭하는 것입니다. 세 번째 단계는 오른쪽에 있는 "입력" 설정을 입력하는 것입니다. 네 번째 단계는 "고급 키보드 설정"을 여는 것입니다. 다섯 번째 단계는 입력 방법 전환에서 "입력 언어 단축키" 버튼을 클릭하는 것입니다. 6단계. 팝업 창에서 "키 순서 변경"을 클릭하세요. 7단계. 전환 입력 언어를 "할당되지 않음"으로 변경하고 저장을 확인하세요.

탐지 알고리즘 개선: 고해상도 광학 원격탐사 이미지에서 표적 탐지용 탐지 알고리즘 개선: 고해상도 광학 원격탐사 이미지에서 표적 탐지용 Jun 06, 2024 pm 12:33 PM

01 전망 요약 현재로서는 탐지 효율성과 탐지 결과 간의 적절한 균형을 이루기가 어렵습니다. 우리는 광학 원격 탐사 이미지에서 표적 감지 네트워크의 효과를 향상시키기 위해 다층 특징 피라미드, 다중 감지 헤드 전략 및 하이브리드 주의 모듈을 사용하여 고해상도 광학 원격 감지 이미지에서 표적 감지를 위한 향상된 YOLOv5 알고리즘을 개발했습니다. SIMD 데이터 세트에 따르면 새로운 알고리즘의 mAP는 YOLOv5보다 2.2%, YOLOX보다 8.48% 우수하여 탐지 결과와 속도 간의 균형이 더 잘 이루어졌습니다. 02 배경 및 동기 원격탐사 기술의 급속한 발전으로 항공기, 자동차, 건물 등 지구 표면의 많은 물체를 묘사하기 위해 고해상도 광학 원격탐사 영상이 활용되고 있다. 원격탐사 이미지 해석에서 물체 감지

PHP 언어 개발에서 null 값 오류를 감지하고 처리하는 방법은 무엇입니까? PHP 언어 개발에서 null 값 오류를 감지하고 처리하는 방법은 무엇입니까? Jun 11, 2023 am 10:51 AM

최신 웹 애플리케이션의 지속적인 개발로 인해 가장 널리 사용되는 프로그래밍 언어 중 하나인 PHP는 웹 사이트 개발에 널리 사용됩니다. 그러나 개발 프로세스 중에 null 값 오류가 자주 발생하며 이러한 오류로 인해 애플리케이션에서 예외가 발생하여 사용자 경험에 영향을 미칠 수 있습니다. 따라서 PHP 개발 과정에서 null 오류를 감지하고 처리하는 방법은 프로그래머가 숙달해야 할 중요한 기술입니다. 1. 널값 오류란 무엇입니까? PHP 개발 프로세스에서 널값 오류는 일반적으로 초기화되지 않은 변수와 변수 변수라는 두 가지 상황을 나타냅니다.

See all articles