Закрытие поп-апа по кнопке Escape или Enter в Vanilla JS

   const keyHandler = (evt) => {
  if (evt.key === 27 || evt.key === 13) {
    const popupActive = document.querySelector('popup_get_opened');
    popupActive.remove();
   
  }
  console.log(keyHandler);
}

Вот есть функция, условием которой является "Если нажата кнопка Enter или Escape, тогда закрыть активный поп-ап. Подскажите, из-за чего она может некорректно работать?

P.S. В обработчики для попапов передаю следующее:

    popupButtonAdd.addEventListener('click', function () {
  popupToggle(popupAdd);
  console.log(popupButtonAdd)
  document.addEventListener('keyup',  keyHandler);
}) // - это открытие попапа 

closePopupAdd.addEventListener('click', function () {
  popupToggle(popupAdd);
  document.removeEventListener('keyup',  keyHandler);
}) // это закрытие попапа

В какую сторону смотреть? Уверен, что ошибка очень глупая, но не могу её увидеть.


Ответы (1 шт):

Автор решения: vsemozhebuty

Если я не ошибаюсь, evt.key возвращают строку с символов или названием клавиши, а не число. Попробуйте:

if (evt.key === 'Escape' || evt.key === 'Enter') {

См. также https://learn.javascript.ru/keyboard-events

→ Ссылка