[JQUERY] jQuery로 이스케이프 키에 대한 어떤 키 코드
JQUERYjQuery로 이스케이프 키에 대한 어떤 키 코드
해결법
-
1.KeyUp 이벤트에보십시오 :
KeyUp 이벤트에보십시오 :
$(document).keyup(function(e) { if (e.keyCode === 13) $('.save').click(); // enter if (e.keyCode === 27) $('.cancel').click(); // esc });
-
2.오히려 하드 코드보다 함수의 키 코드 값은 더 나은 의미를 전달하기 위해 명명 된 상수를 사용하는 것이 좋습니다 :
오히려 하드 코드보다 함수의 키 코드 값은 더 나은 의미를 전달하기 위해 명명 된 상수를 사용하는 것이 좋습니다 :
var KEYCODE_ENTER = 13; var KEYCODE_ESC = 27; $(document).keyup(function(e) { if (e.keyCode == KEYCODE_ENTER) $('.save').click(); if (e.keyCode == KEYCODE_ESC) $('.cancel').click(); });
(다른 사람의 확신 파이어 폭스와 같은) 일부 브라우저는 당신을 위해 상수 이러한 유형의 노출 전역의 KeyEvent 객체를 정의합니다. 이 SO는 질문 쇼 다른 브라우저에서 해당 객체를 정의뿐만 아니라의 좋은 방법입니다.
-
3.(답변 내 이전 코멘트에서 추출)
(답변 내 이전 코멘트에서 추출)
당신은 키를 누를 때보다는의 keyup 사용해야합니다. 예컨대 :
$(document).keyup(function(e) { if (e.which == 13) $('.save').click(); // enter if (e.which == 27) $('.cancel').click(); // esc });
키를 누를 때 가끔의 키를 등록하지 않습니다. 파이어 폭스 대 크롬 대 IE에서 http://api.jquery.com/keypress에서 데모를 시도 (브라우저 사이에서 일관되게 처리 할 것, 모두에 대한 값 '하는'하지 않는다 keyUp 등 반면 'keyCode를'변화)가 일치한다.
JQuery와 정규화 값이고 사용을 권장 하나입니다 e.which 것을 참고 : e.keyCode 대 e.which의 논의가 있었다 때문에 :
(행 http://api.jquery.com/event.which/)
-
4.어떤 키의 키 코드를 찾으려면,이 간단한 기능을 사용 :
어떤 키의 키 코드를 찾으려면,이 간단한 기능을 사용 :
document.onkeydown = function(evt) { console.log(evt.keyCode); }
-
5.27 이스케이프 키의 코드입니다. :)
27 이스케이프 키의 코드입니다. :)
-
6.가장 좋은 방법은
가장 좋은 방법은
$(document).keyup(function(e) { if (e.which === 13) $('.save').click(); // enter if (e.which === 27) $('.cancel').click(); // esc /* OPTIONAL: Only if you want other elements to ignore event */ e.preventDefault(); e.stopPropagation(); });
요약
흥미롭게 부트 스트랩에서 KeyDown하고 드롭 다운 구성 요소의 keyCode를 (3.0.2)를 사용합니다! 나는 거기 아마 잘못 선택 생각합니다.
JQuery와 문서에서 관련 조각
관심의 다른 항목 : 자바 스크립트 키를 누를 때 도서관
-
7.(구글 드라이브에서 다운로드)를 jEscape 플러그인을 사용해보십시오
(구글 드라이브에서 다운로드)를 jEscape 플러그인을 사용해보십시오
$(document).escape(function() { alert('ESC button pressed'); });
또는 GET 키 코드 크로스 브라우저
var code = (e.keyCode ? e.keyCode : e.which); if (code === 27) alert('ESC'); if (code === 13) alert('ENTER');
어쩌면 당신은 스위치를 사용할 수 있습니다
var code = (e.keyCode ? e.keyCode : e.which); switch (code) { case 27: alert('ESC'); break; case 13: alert('ENTER'); break; }
-
8.코드는 잘 작동합니다. 그것은 가장 가능성이 창 그게 전부가 집중 아니에요. 나는 등 가까운 iframe을 상자에 유사한 기능을 사용
코드는 잘 작동합니다. 그것은 가장 가능성이 창 그게 전부가 집중 아니에요. 나는 등 가까운 iframe을 상자에 유사한 기능을 사용
$(document).ready(function(){ // Set focus setTimeout('window.focus()',1000); }); $(document).keypress(function(e) { // Enable esc if (e.keyCode == 27) { parent.document.getElementById('iframediv').style.display='none'; parent.document.getElementById('iframe').src='/views/view.empty.black.html'; } });
-
9.저도 같은 일을하려고했던거야 그리고 그게 날의 쓰레기 밖으로 도청했다. 파이어 폭스에서, 당신이 이스케이프 키를 눌렀을 때 어떤 일을하려고하면, 그 다음 당신이하려고했던 어떤 취소 Esc 키를 처리를 계속 나타납니다. 경고는 잘 작동합니다. 하지만 내 경우에는 내가 작동하지 않았다 역사에 다시 가고 싶어. 마지막으로 나는 아래와 같이 정지 이벤트의 전파를 강제했다는 것을 알아 냈 ...
저도 같은 일을하려고했던거야 그리고 그게 날의 쓰레기 밖으로 도청했다. 파이어 폭스에서, 당신이 이스케이프 키를 눌렀을 때 어떤 일을하려고하면, 그 다음 당신이하려고했던 어떤 취소 Esc 키를 처리를 계속 나타납니다. 경고는 잘 작동합니다. 하지만 내 경우에는 내가 작동하지 않았다 역사에 다시 가고 싶어. 마지막으로 나는 아래와 같이 정지 이벤트의 전파를 강제했다는 것을 알아 냈 ...
if (keyCode == 27) { history.back(); if (window.event) { // IE works fine anyways so this isn't really needed e.cancelBubble = true; e.returnValue = false; } else if (e.stopPropagation) { // In firefox, this is what keeps the escape key from canceling the history.back() e.stopPropagation(); e.preventDefault(); } return (false); }
-
10.다른 답변은하지 않은 위치를 설명하기; 문제는 키 누르기의 사용이다.
다른 답변은하지 않은 위치를 설명하기; 문제는 키 누르기의 사용이다.
아마도 이벤트는 잘못이 명명하지만, actualcharacteris가 삽입 될 때 때의 키가 화재로 정의된다. 즉 본문. 당신이 원하는 것은를 keyDown /의 keyup, 반면 어떤 불 때마다 사용자가 A 키 우울 (전이나 후, 각각). 즉 키보드의 것들.
esc 키를 제어 문자 (문자 그대로 '비 인쇄 문자') 텍스트를 기록하지 않습니다 때문에, 따라서도 발사하지의 키 때문에 차이가 여기에 나타납니다. 당신이 제어 문자로 사용하는 경우에도 때문에, 이상한 입력 여전히 키 누름을 발사하는 새로운 줄 문자를 삽입한다 (즉 UI를 제어합니다).
출처 : 쿼크 모드
-
11.그냥 e.keyCode보다 업데이트 된 대답을 게시하는 것은 MDN에서 사용되지 않음으로 간주됩니다.
그냥 e.keyCode보다 업데이트 된 대답을 게시하는 것은 MDN에서 사용되지 않음으로 간주됩니다.
오히려 당신은 모든 깨끗한 이름을 지원하는 대신 e.key을 선택해야한다. 여기에 관련 사본 파스타입니다
window.addEventListener("keydown", function (event) { if (event.defaultPrevented) { return; // Do nothing if the event was already processed } switch (event.key) { case "ArrowDown": // Do something for "down arrow" key press. break; case "ArrowUp": // Do something for "up arrow" key press. break; case "ArrowLeft": // Do something for "left arrow" key press. break; case "ArrowRight": // Do something for "right arrow" key press. break; case "Enter": // Do something for "enter" or "return" key press. break; case "Escape": // Do something for "esc" key press. break; default: return; // Quit when this doesn't handle the key event. } // Cancel the default action to avoid it being handled twice event.preventDefault(); }, true);
-
12.모든 문자의 16 진수 코드를 얻을 수 : http://asciitable.com/
모든 문자의 16 진수 코드를 얻을 수 : http://asciitable.com/
-
13.키보드 입력 및 키 조합을 캡처하는 강력한 자바 스크립트 라이브러리에 들어갔다. 그것은 종속성이 없습니다.
키보드 입력 및 키 조합을 캡처하는 강력한 자바 스크립트 라이브러리에 들어갔다. 그것은 종속성이 없습니다.
http://jaywcjlove.github.io/hotkeys/
hotkeys('enter,esc', function(event,handler){ switch(handler.key){ case "enter":$('.save').click();break; case "esc":$('.cancel').click();break; } });
⌘ ⇧, shiftoption⌥altctrlcontrolcommand 및 : 단축키는 다음과 같은 수식을 이해한다.
다음 특수 키는 바로 가기를 사용할 수 있습니다 : backspacetab, 분명, 입력, 반환, ESC, 탈출, 공간, 위, 아래, 왼쪽, 오른쪽, 홈, 엔드, 페이지 업, PageDown 키는, 델, andf1 throughf19을 삭제합니다.
-
14.나는 항상 캐치 이스케이프 키의 keyup 및 e.which을 사용했다.
나는 항상 캐치 이스케이프 키의 keyup 및 e.which을 사용했다.
-
15.이 질문 jQuery에 대해 물어 알고 있지만, jqueryui를 사용하는 사람들을 위해, 정수는 키 코드의 많은이 있습니다 :
이 질문 jQuery에 대해 물어 알고 있지만, jqueryui를 사용하는 사람들을 위해, 정수는 키 코드의 많은이 있습니다 :
$.ui.keyCode.ESCAPE
http://api.jqueryui.com/jQuery.ui.keyCode/
from https://stackoverflow.com/questions/1160008/which-keycode-for-escape-key-with-jquery by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 사용하지 않도록 설정하는 가장 쉬운 방법은 무엇입니까 / 사용 버튼과 링크 (jQuery를 + 부트 스트랩) (0) | 2020.10.14 |
---|---|
[JQUERY] 터치 장치 자바 드래그 앤 드롭 [폐쇄] (0) | 2020.10.14 |
[JQUERY] 텍스트에서 모든 공백을 제거 (0) | 2020.10.14 |
[JQUERY] 부트 스트랩 선행 입력 아약스 예를 트위터 (0) | 2020.10.13 |
[JQUERY] 어떻게 jQuery로 다른 하나의 요소에 상대적인 위치를 하는가? (0) | 2020.10.13 |