Задать вопрос
mrerberg
@mrerberg
Yep

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

Задача:
Когда попап открыт, нажатие на клавишу ESC должно закрывать окно, но если фокус находится на форме ввода имени, то окно закрываться не должно.

Код js по работе с попапом и кусок html (на всякий):
https://jsfiddle.net/NooNoo1488/f5aq5ewb/

Как я понял, мне нужно в функцию закрытия попапа эскейпом запихнуть условие,которые проверяет наличие фокуса,если же условие выполниться,то выходить из функции. Но у меня не получается это реализовать.
  • Вопрос задан
  • 2336 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
mrerberg
@mrerberg Автор вопроса
Yep
Решение:
var onPopupEscPress = function (evt) {
if (nameForm === document.activeElement) {
return evt;
} else {
if (evt.keyCode === ESC_BUTTON) {
closePopup();
}
}
};
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@AnneSmith
самая ленивая
полю input присваиваете id, заворачиваете код внтури closePopup в if с условием проверки фокуса
у вас же есть другие if-ы с проверкой значения, сделайте по аналогии
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы