Код клавиши Слэш (/) в JavaScript

Для Слэш (/) event.key — это / (or ? with Shift), event.code — Slash, а устаревший keyCode — 191. Нажмите любую клавишу в Key Code Finder, чтобы увидеть её значения в реальном времени.

Обновлено

СвойствоЗначение
event.key/ (or ? with Shift)
event.codeSlash
event.keyCode / which (устарело)191

Как определить Слэш (/)

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

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

Как браузеры обрабатывают Слэш (/)

Многие сайты (GitHub, YouTube, Gmail) используют «/» для перехода к поиску. Перед обработкой проверьте, не находится ли фокус уже в текстовом поле.

В React

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

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

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