데브허브 | DEVHUB | [10분 테코톡] 밍고의 Web Animation API[10분 테코톡] 밍고의 Web Animation API
- 웹사이트의 동적 요소는 페이지에 생동감을 부여하고 사용자 참여를 유도하며 상호작용을 통해 멋진 경험을 제공합니다. ✨
- 기존 애니메이션 방식으로는 CSS 애니메이션(간단한 문법, 별도 스레드 실행으로 성능 이점)과 JavaScript 애니메이션(정밀 제어 가능하나 복잡성 및 메인 스레드 부담 가능성)이 있습니다. 🎨💻
- Web Animation API(WAAPI)는 CSS 애니메이션의 성능 이점과 JavaScript 애니메이션의 정밀 제어 능력을 결합한 웹 표준 기술입니다. 🌐
- WAAPI는
element.animate(keyframes, options)와 같은 간단한 사용법으로 CSS keyframes 및 animation 속성과 유사하게 애니메이션을 정의합니다. ➡️
- JavaScript 기반으로
play(), pause(), currentTime 접근 등 애니메이션을 세밀하게 제어할 수 있으며, finish, cancel과 같은 이벤트를 활용하여 애니메이션 흐름에 따른 추가 동작을 구현할 수 있습니다. 🕹️🔔
- 성능 면에서 WAAPI는 CSS 애니메이션처럼 별도 스레드에서 실행되어 메인 스레드 부담을 줄이고 최적화된 성능을 제공함이
requestAnimationFrame과의 비교를 통해 확인되었습니다. 📈
- 결론적으로 Web Animation API는 웹 애니메이션 구현에 있어 성능과 제어력을 모두 갖춘 강력하고 새로운 선택지입니다. 💡