Мы (разработчики) почти никогда не задумываемся об этом, но в жизни каждого элемента есть такое время, когда он должен работать по нажатию какой-то нативной кнопки. Например — Escape. Кнопка закрытия.
Что она делает?
Правильно — закрывает какой-то элемент на странице.
Почему это важно?
Потому что юзеры — ленивые. Они привыкли, что при нажатии на какую-то кнопку на клавиатуре — происходит то или иное действие. Это есть повсеместно в любой системе. И это — нормально. Зачем программисты придумывают различные клавиатурные комбинации для своих программ? Чтобы ускорить работу пользователя с этой програмой.
Так же и в вебе. Любая форма/кнопка/попап/слайдер/etc. должны выполнять те или иные действия при нажатиии клавиш на клавиатуре. Например:
- Стрелочки — слайдер крутится туда-сюда.
- Эскейп — попап закрывается.
- Энтер — поиск ищется, форма отправляется.
И еще тысячи примеров такого взаимодействия с юзером.
Такие дела, друзья. Мир.