해결된 질문
작성
·
688
1
안녕하세요, 선생님.
섹션2 Advanced Trigger - practice 예제에서
fixedHeader() 함수를 통해 헤더가 pin되어 start 지점부터 fixed 처리가 되잖아요~
이와 동시에 fixed 될 때 특정 클래스(toggleClass : "active")를 넣어서 스타일을 다르게 주려고 했거든요.
그런데 end 마지막 지점에 스크롤이 닿으면 fixed는 되어있지만 class는 사라지더라고요.
혹시 다른 방법이 있을까요?
function fixedHeader(){
ScrollTrigger.create({
trigger: '.nav_container',
start: 'top top',
// endTrigger:'.footer',
end: 'max',
pin: true,
pinSpacing: false,
toggleClass : "active"
})
}
답변 1
2
안녕하세요 류지 25님 😀
toggleClass는 해당 지점을 leave 하게 되면 바로 클래스를 제거해버리기 때문에 저런 문제가 생기는 것 같습니다.
앞서 학습한
enter콜백을 사용하여 엔터가 된 시점부터 클래스를 넣으시고,
onUpdate 콜백을 사용해 스크롤 진행률이 얼만큼 이하로 내려갔다면 해당 클래스를 제거하는 코드를 작성해 보시는게 좋을 것 같습니다.
만약 텍스트만 보고 해결을 못하셨다면, 댓글 남겨주시면 구현 코드를 추가로 드려보도록 할게요 ㅎㅎ
(직접 고민하고 사용해보는 연습이 중요합니다!)
감사합니다 :)
감사합니다!!
onEnter, onLeaveBack 콜백으로 잘 해결되었습니다.