18_Background Slider
💻 주제 : 이미지를 슬라이드 하면 배경화면의 이미지가 함께 변경된다.
- 오른쪽, 왼쪽 버튼에 click 메서드를 추가해 이미지가 반복되도록 함.
- setBgToBody() 함수를 만들어 해당 슬라이드 이미지가 배경 이미지와 같도록 설정.
function setBgToBody() { body.style.backgroundImage = slides[activeSlide].style.backgroundImage; }
- classList의 add, remove 기능으로 active 클래스 활성, 비활성화
const body = document.body;
const slides = document.querySelectorAll('.slide');
const leftBtn = document.getElementById('left');
const rightBtn = document.getElementById('right');
let activeSlide = 0;
rightBtn.addEventListener('click', () => {
activeSlide++;
if(activeSlide > slides.length -1) {
activeSlide = 0;
}
setBgToBody();
setActiveSlide();
})
leftBtn.addEventListener('click', () => {
activeSlide--;
if(activeSlide < 0) {
activeSlide = slides.length - 1;
}
setBgToBody();
setActiveSlide();
})
setBgToBody();
function setBgToBody() {
body.style.backgroundImage = slides[activeSlide].style.backgroundImage;
}
function setActiveSlide() {
slides.forEach(slide => {
slide.classList.remove('active');
})
slides[activeSlide].classList.add('active');
}