Встречается на собеседованиях • сегодня

Почему не всегда можно закрыть модальное окно при навешивании обработчика на подложку

Закрытие модального окна по клику на подложку может не работать из-за всплытия событий (event bubbling). Если внутри модалки есть кликабельные элементы, клик по ним всплывет до подложки, вызывая нежелательное закрытие.

Решение — проверять event.target:

javascript
modalOverlay.addEventListener('click', (e) => {
  if (e.target === modalOverlay) {
    closeModal();
  }
});

Другие причины:

  • pointer-events: none у подложки
  • Модалка перехватывает клики (например, через stopPropagation)
  • Z-index элементов настроен некорректно
  • Подложка перекрыта другими элементами из-за структуры DOM
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы