fix: Use Bootstrap API and delayed backdrop removal

This commit is contained in:
mirivlad 2026-04-17 19:48:57 +08:00
parent 4f407c0d46
commit 6e54615d54
1 changed files with 14 additions and 12 deletions

View File

@ -417,21 +417,23 @@
} }
} }
// Используем Bootstrap API для закрытия
var modalEl = document.getElementById('iconPickerModal'); var modalEl = document.getElementById('iconPickerModal');
if (modalEl) { if (modalEl && typeof bootstrap !== 'undefined' && bootstrap.Modal) {
modalEl.classList.remove('show'); var modal = bootstrap.Modal.getInstance(modalEl);
modalEl.style.display = 'none'; if (modal) {
modalEl.setAttribute('aria-hidden', 'true'); modal.hide();
modalEl.removeAttribute('aria-modal'); }
} }
var backdrop = document.querySelector('.modal-backdrop'); // Принудительно удаляем backdrop через небольшую задержку
if (backdrop) { setTimeout(function() {
backdrop.remove(); var backdrops = document.querySelectorAll('.modal-backdrop');
} backdrops.forEach(function(bp) { bp.remove(); });
document.body.classList.remove('modal-open'); document.body.classList.remove('modal-open');
document.body.style.paddingRight = ''; document.body.style.paddingRight = '';
document.body.style.overflow = ''; document.body.style.overflow = '';
}, 100);
} }
document.addEventListener('DOMContentLoaded', function() { document.addEventListener('DOMContentLoaded', function() {