Подтвердить что ты не робот

Как использовать ввод с клавиатуры в JavaScript?

Я хочу использовать ввод с клавиатуры в JavaScript, где клавиши со стрелками при нажатии будут приводить к изменению формы конкретной фигуры. Как взять ввод любого из ключей в JavaScript?

4b9b3361

Ответ 1

Вы можете сделать это с помощью регистрации обработчика событий в документе или любого элемента, на котором хотите наблюдать нажатия клавиш, и изучить связанные с ключом свойства объекта события.

Пример, который работает в браузерах FF и Webkit:

document.addEventListener('keydown', function(event) {
    if(event.keyCode == 37) {
        alert('Left was pressed');
    }
    else if(event.keyCode == 39) {
        alert('Right was pressed');
    }
});

DEMO

Ответ 2

Если вы делаете это в браузере, вы можете записывать события клавиатуры.

  • KeyDown
  • нажатие клавиши
  • KeyUp

Могут ли все прослушиваться на узлах HTML в большинстве браузеров.

Webkit также поддерживает...

  • TextInput

Подробнее см. http://unixpapa.com/js/key.html

Ответ 3

Вам следует зарегистрировать обработчик событий в окне или любом элементе, на котором вы хотите наблюдать нажатие клавиш, и использовать стандартные значения клавиш вместо keyCode. Этот измененный код из MDN будет реагировать на нажатие клавиш при нажатии клавиш со стрелками влево, вправо, вверх или вниз:

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

  switch (event.key) {
    case "ArrowDown":
      // code for "down arrow" key press.
      break;
    case "ArrowUp":
      // code for "up arrow" key press.
      break;
    case "ArrowLeft":
      // code for "left arrow" key press.
      break;
    case "ArrowRight":
      // code for "right arrow" key press.
      break;
    default:
      return; // Quit when this does not handle the key event.
  }

  // Cancel the default action to avoid it being handled twice
  event.preventDefault();
}, true);
// the last option dispatches the event to the listener first,
// then dispatches event to window

Ответ 4

Используйте событие JQuery keydown.

$(document).keypress(function(){
    if(event.which == 70){  //f
        console.log("You have payed respect");
    }
});

в JS; клавиши клавиатуры обозначаются кодами JavaScript