๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Javascript

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ : GSAP๋ž€?

by ์ฝ”ํŒŒ์นด 2022. 8. 29.
728x90

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ : GSAP๋ž€?

GSAP๋Š” GreenSock์—์„œ ๋งŒ๋“  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋Š” CSS๋‚˜ JQUERY๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด์ง€๋งŒ, ๊ทธ ์ด์ƒ์˜ ๋ณต์žกํ•œ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋ณด๋‹ค ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ํƒ„์ƒํ•œ ๊ฒƒ์ด ๋ฐ”๋กœ GSAP์ž…๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ GSAP์˜ ์‚ฌ์šฉ๋ฒ•์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


1. CDN์—์„œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฐ€์ ธ์˜ค๊ธฐ

CDN์ด๋ž€ Contents Delivery Network์˜ ์•ฝ์ž๋กœ, ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ๋œ ์„œ๋ฒ„์—์„œ ๋ฐ›์•„์˜ค๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. GSAP์ด๋‚˜ jQuery์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ˜ธ์ŠคํŒ…๋œ ์„œ๋ฒ„์— ์ง์ ‘ ์„ค์น˜ํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, CDN์„ ์‚ฌ์šฉํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ง์ ‘ ์ž์‹ ์˜ ์œ„์น˜๋กœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ „์†ก๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.0/gsap.min.js"></script>

์œ„์™€ ๊ฐ™์ด, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด jsํŒŒ์ผ์˜ ๋งํฌ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ฒ˜๋Ÿผ CDN ์„œ๋ฒ„์˜ ์ ˆ๋Œ€ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

2. GSAP์˜ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ธฐ๋ณธ ๋ฉ”์„œ๋“œ

gsap.to()
gsap.from()
gsap.fromTo()

gsap์˜ ๋ฉ”์„œ๋“œ to๋Š” ์ฒซ ๋ฒˆ์งธ ์ธ์ž๋กœ DOM ์š”์†Œ๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค. ๋งˆ์น˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ querySelector์™€ ๊ฐ™์ด ํด๋ž˜์Šค๋ฅผ ํ‘œ๊ธฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์ธ์ž๋กœ ์˜ต์…˜๊ฐ’๋“ค์„ ๋‹ด์€ ๊ฐ์ฒด๋ฅผ ์ „๋‹ฌํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ๋ฉ”์„œ๋“œ๋“ค์˜ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์€ ๊ฐ™์œผ๋ฉฐ, to๋Š” ์–ด๋””๋กœ, from์€ ์–ด๋””์—์„œ, fromTo๋Š” ์–ด๋””์—์„œ ์–ด๋””๋กœ ์–ด๋–ป๊ฒŒ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋งŒ๋“ค์ง€ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•œ ๋ฉ”์„œ๋“œ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

3. ์ ์šฉํ•˜๊ธฐ

์นœ์ ˆํžˆ ์ œ๊ฐ€ gsap.to() ๋ฉ”์„œ๋“œ๋ฅผ ํ™œ์šฉํ•œ ์˜ˆ์‹œ๋ฅผ ๋ณด์—ฌ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ํ•˜๋‹จ์˜ rerun ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด์‹œ๋ฉด ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ๋‹ค์‹œ ์žฌ์ƒ๋ฉ๋‹ˆ๋‹ค.

See the Pen Untitled by mj0614k (@mj0614k) on CodePen.

728x90

๋Œ“๊ธ€

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿฆ™

CSS
๊ด‘๊ณ  ์ค€๋น„์ค‘