W przypadku kodu, który zaprezentowałeś możesz użyć np. takiego zapisu
const closeButtons = document.querySelectorAll('#close-btn');
closeButtons.forEach(btn => btn.addEventListener('click', (e) => {
const modal = e.target.closest('.card-body');
modal.remove();
}));
document.body.style.overflow = 'auto' dodaj do css-a, np.
body {
/* Twój wcześniejszy kod */
overflow-y: auto;
}
mając już "utworzony" card_body
const createModal = (value) => {
const card_body = document.createElement('div');
...
document.body.appendChild(card_body);
...
}
możesz go użyć w zdarzeniu click dla close_button
const createModal = (value) => {
const card_body = document.createElement('div');
card_body.classList.add('card-body');
card_body.innerHTML = modal(value);
document.body.appendChild(card_body);
const close_button = card_body.querySelector('#close-btn');
close_button.addEventListener('click', () => {
card_body.remove();
});
}
P.S. Przykładowy nieco inny zapis Twojego kodu .