Scroll Fade
Elements start invisible (opacity: 0, y: 32px) in CSS. gsap.utils.toArray() selects all .fade-item elements and creates an individual gsap.to() tween with its own scrollTrigger for each — so each item has an independent trigger. start: 'top 85%' fires when the element’s top edge is 85% down the viewport.
요소들은 CSS에서 opacity: 0, y: 32px로 시작합니다. gsap.utils.toArray()로 모든 .fade-item을 선택하고 각각 독립적인 scrollTrigger를 가진 gsap.to() 트윈을 생성합니다. start: 'top 85%'는 요소의 상단 가장자리가 뷰포트의 85% 지점에 도달할 때 발동됩니다.
Source Code script.js
gsap.registerPlugin(ScrollTrigger);
gsap.utils.toArray('.fade-item').forEach((el) => {
gsap.to(el, {
opacity: 1,
y: 0,
duration: 0.7,
ease: 'power2.out',
scrollTrigger: {
trigger: el,
start: 'top 85%',
},
});
});