<button class="btn-more">подробнее</button>), как сделать чтобы открытие контента происходила на всех кнопках.const caseBtn = document.querySelector('.btn-more');
const caseCloseBtn = document.querySelector('.close__content');
const bodyPortfolio = document.querySelector('body');
const caseContent = document.querySelector('.portfolio__content');
caseBtn.addEventListener('click', (event) => {
event.stopPropagation();
caseContent.classList.add('case__active');
bodyPortfolio.classList.add('overflowhidden');
});
caseCloseBtn.addEventListener('click', (event) => {
event.stopPropagation();
caseContent.classList.remove('case__active');
bodyPortfolio.classList.remove('overflowhidden');
}); <div class="portfolio"><button class="btn-more">подробнее</button>...</div>
<div class="portfolio"><button class="btn-more">подробнее</button>...</div>
<div class="portfolio"><button class="btn-more">подробнее</button>...</div>// Это не нужно. К body можно обратиться напрямую document.body
//const bodyPortfolio = document.querySelector('body');
[...document.querySelectorAll('.portfolio')].forEach(function(item){
const caseBtn = item.querySelector('.btn-more');
const caseCloseBtn = item.querySelector('.close__content');
const caseContent = item.querySelector('.portfolio__content');
caseBtn.addEventListener('click', (event) => {
event.stopPropagation();
caseContent.classList.add('case__active');
document.body.classList.add('overflowhidden');
});
caseCloseBtn.addEventListener('click', (event) => {
event.stopPropagation();
caseContent.classList.remove('case__active');
document.body.classList.remove('overflowhidden');
});
}); только на первую кнопку...
querySelectorquerySelector() находит и отдаёт первый элемент, подходящий селектору. Остальные остаются вне игры.querySelectorAll() выберет все подходящие. Но потом коллекцию (NodeList) надо обходить циклом. Например, querySelectorAll(...).forEach(item => что-то-сделать-с-item).button.btn-more, дальше исходя из этой кнопки находить в DOM-дереве ближайшие элементы, которым надо менять классы. Делегирование событий.