/
ondevelop
/
Mesto-Project
Обзор
Документация
Войти
/
ondevelop
/
Mesto-Project
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/components/modal.js
30 строк
775 B
Stanislav Kozlovskiy
Ужас, но финал
14 дек 2024, 20:32
14 дек 2024, 20:32
08d7872
Код
Авторство
О чём код?
export function openModal(modal) { modal.classList.add('popup_is-animated'); setTimeout(() => { modal.classList.add('popup_is-opened'); }, 10); document.addEventListener('keydown', closeOnEscape); } export function closeModal(modal) { modal.classList.remove('popup_is-opened'); setTimeout(() => { modal.classList.remove('popup_is-animated'); }, 600); document.removeEventListener('keydown', closeOnEscape); } function closeOnEscape(e) { if (e.key === 'Escape') { const modal = document.querySelector('.popup_is-opened'); if (modal) { closeModal(modal); } } } export function closeOnClick(e, modal) { if (e.target.classList.contains('popup__close') || e.target.classList.contains('popup')) { closeModal(modal); } }