let btns = document.querySelectorAll('.modal-open');
let modal = document.querySelectorAll('.modal');
const body = document.body
function open(el) {
el.classList.add('active');
}
function close(el) {
el.target.closest('.modal').classList.remove('active')
}
btns.forEach(btn => {
btn.addEventListener('click', (e) => {
let data = e.target.dataset.open;
modal.forEach(modals => {
if(modals.dataset.modal == data || modals.dataset.modal == e.target.closest('modal-open').dataset.open) {
open(modals)
}
})
} )
modal.forEach(modals => {
modals.addEventListener('click', e => close(e))
})
})
event.target
получаешь атрибут, ищешь атрибут на странице и делаешь то, что тебе нужно. Если хочешь, чтобы при каждому клике другой контент скрывался, сначала даешь всем display: none,
а после определенному контенту даешь display: block
body {position: fixed;}
window.addEventListener("scroll", event => {
event.preventDefault();
window.scrollTo(0, 0);
});
div {
max-height: 20rem;
overflow-x: hidden;
overflow-y: auto;
margin-right: 0.25rem;
::-webkit-scrollbar-track {
border-radius: 0.125rem;
background-color: lightgray;
}
::-webkit-scrollbar {
width: 0.25rem;
border-radius: 0.125rem;
}
::-webkit-scrollbar-thumb {
border-radius: 0.125rem;
background-color: gray;};
}
}