[GSAP] callback, eventCallback
[GSAP] callback, eventCallback
callback, eventCallback
onComplete, onUpdate, onStart, onRepeat 의 이벤트 콜백을 가져오거나 설정한다.
1
eventCallback(type:String, callback:Function, params:Array)
Parameters
- type: String
- 이벤트 콜백 유형은 “
onComplete”, “onUpdate”, “onStart”, “onRepeat” 이며, 대소문자를 구분한다.
- 이벤트 콜백 유형은 “
- callback: Function
- default:
null - 이벤트가 발생했을 때 호출되는 함수
- default:
- params: Array
- default:
null - 콜백 함수에 전달하기 위한 매개변수 배열
- default:
Returns: [Function | self]
- getter
- 첫 번째 매개변수를 제외하고 모두 생략하면 현재 값(getter)이 반환된다.
- setter
- 첫 번째 매개변수보다 더 많이 정의하면 콜백(setter)이 설정되고 인스턴스 자체를 반환한다.
Syntax
애니메이션 내부에서 callback 사용하기
1
2
3
4
5
6
gsap.to(obj, {
duration: 1,
x: 100,
onComplete: myFunction,
onCompleteParams: ["param1", "param2"],
});
애니메이션 외부에서 callback 사용하기
1
myAnimation.eventCallback("onComplete", myFunction, ["param1", "param2"]);
애니메이션 외부에서 callback을 설정하면, 콜백 참조를 검사하거나 삭제할수 있다는 장점이 있다.
1
2
// deletes the onUpdate
myAnimation.eventCallback("onUpdate", null);
콜백은 각 이벤트 유형 onComplete, onUpdate, onStart, onRepeat 하나씩만 설정할 수 있다. 따라서 새 값을 설정하면 이전 값을 덮어쓰게 된다.
callback 종류
Tween, Stagger, timeline
- onComplete()
- 애니메이션이 완료되면 호출
※ 무한반복 상태에서는onCompletecallback을 받을 수 없다.onCompleteParams: Array- 콜백에 전달 할 파라미터
- onStart()
- 애니메이션이 시작될 때 호출
onStartParams: Array- 콜백에 전달 할 파라미터
- onUpdate()
- 애니메이션이 업데이트 될 때마다 호출
onUpdateParams: Array- 콜백에 전달 할 파라미터
- onRepeat()
- 애니메이션이 반복될 때마다 호출
onRepeatParams: Array- 콜백에 전달 할 파라미터
- onReverseComplete()
- 애니메이션 반전 시 애니메이션이 완료되면 호출
onReverseCompleteParams: Array- 콜백에 전달 할 파라미터
Timeline
- onComplete()
- 애니메이션이 완료되면 호출
onCompleteParams: Array- 콜백에 전달 할 파라미터
- onInterrupt()
- 애니메이션이 중단될 때 호출 (애니메이션이 정상적으로 완료되면 호출하지 않음)
onInterruptParams: Array- 콜백에 전달 할 파라미터
- onRepeat()
- 애니메이션이 반복될 때마다 호출
onRepeatParams: Array- 콜백에 전달 할 파라미터
- onReverseComplete()
- 애니메이션이 거꾸로 재생되고 다시 시작점에 도달했을 때 호출
onReverseCompleteParams: Array- 콜백에 전달 할 파라미터
- onStart()
- 애니메이션이 시작될 때 호출
onStartParams: Array- 콜백에 전달 할 파라미터
- onUpdate()
- 애니메이션이 업데이트 될 때마다 호출
onUpdateParams: Array- 콜백에 전달 할 파라미터
ScrollTrigger
- onEnter()
- 스크롤 위치가 시작점을 지날 때 호출
- 인스턴스 자체를 하나의 매개변수로 받는다.
onEnter ({ progress, direction, isActive })
- onLeave()
- 종료점을 지날 때 호출
- 인스턴스 자체를 하나의 매개변수로 받는다.
onLeave ({ progress, direction, siActive })
- onEnterBack()
- 스크롤 위치가 종료점을 지나 다시 종료점으로 들어올 때 호출
- 인스턴스 자체를 하나의 매개변수로 받는다.
onEnterBack ({ progress, direction, isActive })
- onLeaveBack()
- 스크롤 위치가 종료점을 지나 다시 들어온 후 다시 시작점을 나갈 때 호출
- 인스턴스 자체를 하나의 매개변수로 받는다.
onLeaveBack ({ progress, direction, isActive })
- onToggle()
- onEnter, onLeave, onEnterBack, onLeaveBack 콜백들이 호출될 때마다 호출
onToggle ({ self })
- onRefresh()
- resize 이벤트 발생 시 호출. ScrollTrigger가 모든 위치 지정을 다시 계산한다.
onRefresh ({ progress, direction, isActive })
- onUpdate()
- 스크롤이 되는 동안 지속적으로 호출
※scrub에 숫자를 할당한 경우 스크롤 위치가 멈춘 후에도 관련 애니메이션이 잠시동안 스크러빙 된다는 점 유의onUpdate ( self )
- onScrubComplete()
- 스크럽이벤트가 완료되었을 때 호출
onScrubComplete ({ progress, direction, isActive })
- onSnapComplete()
- 스냅 이벤트가 완료되었을 때 호출
onSnapComplete ({ progress, direction, isActive })
Draggable
- onClick()
- 요소를 클릭했다가 3px 이상 이동하지 않고 놓았을 때만 호출
onClickParams: Array- 콜백에 전달 할 파라미터
- onDrag()
- 드래그 하는 동안 호출되는 함수
onDragParams: Array- 콜백에 전달 할 파라미터
- onDragEnd()
- 드래그 후 마우스를 놓는 즉시 호출되는 함수
onDragEndParams: Array- 콜백에 전달 할 파라미터
- onDragStart()
- 요소를 클릭했다가 2픽셀 이상 이동하면 즉시 호출
onDragStartParams: Array- 콜백에 전달 할 파라미터
- onLockAxis()
- 움직임이 수평 또는 수직 축에 고정되자마자 호출하는 함수
- onMove()
- 드래그 하는 동안 마우스가 움직일 때마다 호출되는 함수
- onPress()
- 요소를 누르는 즉시 호출되는 함수
onPressParams: Array- 콜백에 전달 할 파라미터
- onPressInit()
- 시작 값이 기록되기 전에 호출되는 함수
- onRelease()
- 드래그 여부와 관계없이 요소를 누른 후 마우스를 놓는 즉시 호출
onReleaseParams: Array- 콜백에 전달 할 파라미터
참고
This post is licensed under CC BY 4.0 by the author.