swiper에서 보이는 부분만 디자인 적용 하는 방법 궁금합니다. 채택완료

2077528214_1728283157.2772.png

총 슬라이드 갯수가 9개이고

slidesPerView: 3 로

autoplay 해놓았습니다!

 

active가 바뀔때마다

3개중 마지막에 있는 슬라이드에만

css효과를 주고 싶습니다

 

swiper-slide-next 다음껄 선택하면 될것 같은데,,

선택할 수 있는 방법이 있을까요ㅠㅠ?

답변 1개

채택된 답변
+20 포인트

js 

Copy
const swiper = new Swiper('.swiper-container', {
  slidesPerView: 3,
  autoplay: {
    delay: 3000,
  },
  on: {
    slideChange: function () {
      // 모든 슬라이드에서 CSS 클래스 제거
      const slides = this.slides;
      slides.forEach((slide) => {
        slide.classList.remove('active-slide');
      });
      
      // 다음 슬라이드에 CSS 클래스 추가
      const nextSlide = slides[this.activeIndex + 2]; // 현재 인덱스 + 2 = 마지막 슬라이드
      if (nextSlide) {
        nextSlide.classList.add('active-slide');
      }
    },
  },
});

 

css

Copy
.active-slide {
  /* 원하는 CSS 효과 */
  transform: scale(1.1); /* 예시 */
  transition: transform 0.3s;
}

 

chatgpt가 알려준 예시입니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고