Код клавиши F5 в JavaScript

Для F5, event.key — это F5, event.code — F5, а устаревший keyCode — 116. Нажмите любую клавишу в Поиске кодов клавиш, чтобы увидеть её значения в реальном времени.

Обновлено

СвойствоЗначение
event.keyF5
event.codeF5
event.keyCode / which (устарело)116

Как определить F5

document.addEventListener('keydown', (event) => {
  if (event.key === "F5") {
    // F5 was pressed
  }
});

Используйте event.key, чтобы реагировать на то, что означает клавиша (учитывается раскладка клавиатуры), и event.code для её физического положения, например WASD в играх. keyCode и which устарели: они по-прежнему работают, но их значения различаются в разных браузерах и раскладках.

Как браузеры обрабатывают F5

F5 перезагружает страницу. Заблокировать её с помощью preventDefault() можно, но это неудобно — лучше используйте событие beforeunload, чтобы защитить несохранённые данные.

В React

<input onKeyDown={(e) => { if (e.key === "F5") { /* … */ } }} />

Часто задаваемые вопросы

Какой keyCode у F5?
116. Однако он устарел: в новом коде используйте event.key («F5») или event.code (F5).
В чём разница между event.key и event.code?
event.key — это символ или действие, которое клавиша даёт с текущей раскладкой; event.code — физическое положение клавиши, одинаковое на любой раскладке.
Что использовать: keydown или keypress?
keydown. Событие keypress устарело и не срабатывает для клавиш, которые не вводят символы, например Escape или стрелки.