[javascript] 자바스크립트로 페이드 인 애니메이션을 활용한 이미지 슬라이드 쇼
이미지 슬라이드 쇼는 웹사이트에서 매력적인 사용자 경험(UX)을 제공하는 데 도움이 되는 중요한 기능입니다. 자바스크립트를 사용하여 이미지를 부드럽게 전환하면서 화면에 표시할 수 있는 페이드 인 애니메이션(fade-in animation)을 소개해보겠습니다.
필요한 HTML 구조 만들기
가장 먼저, 이미지 슬라이드 쇼를 위한 HTML 구조를 작성해야 합니다. 아래와 같이 간단한 구조를 만들어봅시다.
<div class="slideshow">
<img src="image1.jpg" alt="Image 1">
<img src="image2.jpg" alt="Image 2">
<img src="image3.jpg" alt="Image 3">
</div>
CSS로 슬라이드 쇼 스타일링하기
이미지 슬라이드 쇼를 좀 더 동적으로 만들기 위해 CSS(Cascading Style Sheets)를 활용하여 스타일링할 수 있습니다.
.slideshow {
position: relative;
}
.slideshow img {
position: absolute;
top: 0;
left: 0;
opacity: 0;
transition: opacity 1s ease-in-out;
}
.slideshow img.active {
opacity: 1;
}
자바스크립트로 애니메이션 추가하기
페이드 인 애니메이션을 구현하기 위해 자바스크립트를 사용합니다. 슬라이드 쇼에서 이미지 간의 전환을 관리하고, 애니메이션을 적용합니다.
const images = document.querySelectorAll('.slideshow img');
let currentImageIndex = 0;
function showImage(index) {
images.forEach((image, idx) => {
if (idx === index) {
image.classList.add('active');
} else {
image.classList.remove('active');
}
});
}
function nextImage() {
currentImageIndex = (currentImageIndex + 1) % images.length;
showImage(currentImageIndex);
}
setInterval(nextImage, 3000); // 3초마다 다음 이미지 표시
위의 코드에서는 showImage
함수로 이미지를 전환하고, nextImage
함수를 사용하여 주기적으로 다음 이미지를 표시합니다.
마치며
이제 자바스크립트를 사용하여 페이드 인 애니메이션을 활용한 이미지 슬라이드 쇼를 구현해보았습니다. 이러한 슬라이드 쇼는 웹사이트나 블로그에서 시각적인 효과를 줄 때 유용하게 활용될 수 있습니다. 여러분도 이를 참고하여 독창적인 이미지 슬라이드 쇼를 만들어 보세요!