채택완료

자바스크립트 질문드립니다.

2023-05-26 (금) 17:51:28 3,261

안녕하세요

슬라이드가 돌아올때마다 텍스트에 애니메이션을 주려고 합니다.

직접 마킹으로 class="text ani" 를 입력하면 구동이 잘되는데

ani를 없애고 자바스크립트로로 구동하려고 하면

remove , add 가 안먹히는것 같습니다.

'.swiper-wrapper .swiper-slide .text' 이부분 경로를 잘못정해준건지..

도통 모르겠어서 고수님들께 여쭙니다. 

도움 주시면 정말 감사드리겠습니다

코드는 아래와 같습니다.

Copy
<div class="swiper-wrapper">

<div class="swiper-slide">

<div class="text">테스트</div>

<img src="img/text.jpg">

</div>

</div>

 

<script>

  function mainVisualTextAni() {
    $('.swiper-wrapper .swiper-slide .text').removeClass('ani');
    $('.swiper-wrapper .swiper-slide-active .text').addClass('ani');
  }

</script>

 

.swiper-wrapper .text.ani { animation: mainVisual-animation 0.7s ease-in-out 0.9s forwards; }
|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트

.swiper-wrapper .swiper-slide-active .text{ animation: mainVisual-animation 0.7s ease-in-out 0.9s forwards; }

이렇게 하면 굳이 스크립트 처리 하지 않으셔도 될것 같은데요?  

스크립트로 처리하실려면 swiper에서 지원하는 이벤트 slideChangeTransitionEnd나 slideChangeTransitionStart 에서 위 함수를 실행시켜줘야 할것 같습니다. 

근데 굳이 이렇게 처리하지 않고 css로도 충분히 될것 같네요. 

답변에 대한 댓글 1개

2023-05-26 (금) 18:51:13
정말 감사합니다!

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