This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
export function initModal() {
|
||||
const modals = document.querySelectorAll('[data-component="modal"]');
|
||||
modals.forEach((modal) => {
|
||||
modal.addEventListener('click', (event) => {
|
||||
const target = event.target;
|
||||
if (!(target instanceof HTMLElement)) {
|
||||
return;
|
||||
}
|
||||
if (target.dataset.action === 'modal-close') {
|
||||
modal.setAttribute('hidden', 'hidden');
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
document.querySelectorAll('[data-action="modal-open"]').forEach((trigger) => {
|
||||
trigger.addEventListener('click', () => {
|
||||
const id = trigger.getAttribute('data-target');
|
||||
if (!id) {
|
||||
return;
|
||||
}
|
||||
const modal = document.getElementById(id);
|
||||
if (modal) {
|
||||
modal.removeAttribute('hidden');
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user