[javascript] jQuery를 사용하여 키보드에서 Enter를 누르는 것을 감지하는 방법은 무엇입니까?
사용자가 EnterjQuery를 사용하여 눌렀는지 여부를 감지하고 싶습니다 .
이것이 어떻게 가능한지? 플러그인이 필요합니까?
편집 : keypress()
방법 을 사용해야하는 것 같습니다 .
해당 명령에 브라우저 문제가 있는지 아는 사람이 있는지 알고 싶었습니다. 브라우저 호환성 문제가 있습니까?
답변
jQuery의 요점은 브라우저 차이점에 대해 걱정할 필요가 없다는 것입니다. enter모든 브라우저에서 13 세 이상을 안전하게 사용할 수 있다고 확신 합니다. 따라서이를 염두에두고 다음을 수행 할 수 있습니다.
$(document).on('keypress',function(e) {
if(e.which == 13) {
alert('You pressed enter!');
}
});
답변
“on enter key press”이벤트를보다 쉽게 바인딩 할 수 있도록 작은 플러그인을 작성했습니다.
$.fn.enterKey = function (fnc) {
return this.each(function () {
$(this).keypress(function (ev) {
var keycode = (ev.keyCode ? ev.keyCode : ev.which);
if (keycode == '13') {
fnc.call(this, ev);
}
})
})
}
용법:
$("#input").enterKey(function () {
alert('Enter!');
})
답변
나는 일에 @Paolo Bergantino 게시 한 코드를 가져올 수 없습니다하지만 난 그것을 변경하는 경우 $(document)
와 e.which
대신 e.keyCode
다음 내가 찾은 그 고장없이 작동 할 수 있습니다.
$(document).keypress(function(e) {
if(e.which == 13) {
alert('You pressed enter!');
}
});
답변
나는 이것이 더 크로스 브라우저와 호환되는 것을 발견했다.
$(document).keypress(function(event) {
var keycode = event.keyCode || event.which;
if(keycode == '13') {
alert('You pressed a "enter" key in somewhere');
}
});
답변
jquery ‘keydown’이벤트 핸들을 사용 하여이 작업을 수행 할 수 있습니다
$( "#start" ).on( "keydown", function(event) {
if(event.which == 13)
alert("Entered!");
});
답변
event.key
현대 JS를 사용하십시오 !
$(document).keypress(function(event) {
if (event.key === "Enter") {
// Do something
}
});
또는 jQuery없이 :
document.addEventListener("keypress", function onEvent(event) {
if (event.key === "Enter") {
// Do something better
}
});
답변
나는 누군가에게 도움이되기를 바랍니다.
$(document).ready(function(){
$('#loginforms').keypress(function(e) {
if (e.which == 13) {
//e.preventDefault();
alert('login pressed');
}
});
$('#signupforms').keypress(function(e) {
if (e.which == 13) {
//e.preventDefault();
alert('register');
}
});
});