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

GSAP

by oranssy 2022. 8. 29.
728x90
๋ฐ˜์‘ํ˜•

โญ๏ธ GSAP โญ๏ธ


GSAP๋ž€?

GSAP (GreenSock Animation Platform)์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
์ž์ฃผ ์‚ฌ์šฉ๋˜์ง€๋งŒ ์ผ์ผํžˆ ๊ตฌํ˜„ํ•˜๊ธฐ ๋ถˆํŽธํ•˜๊ณ  ๊นŒ๋‹ค๋กœ์šด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ์˜ ํŠน์ • ๊ธฐ๋Šฅ์„ ๊ธฐ์„ฑํ’ˆ์œผ๋กœ ๋งŒ๋“ค์–ด ๋†“์€ ํŒจํ‚ค์ง€๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.
GSAP๋Š” ์„ธ๋ฐ€ํ•œ ์›€์ง์ž„๊ณผ ๋™์ž‘์˜ ์—ฐ์†์„ฑ์„ ๊ฐ„ํŽธํ•˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•์Šต๋‹ˆ๋‹ค.

GSAP ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

01. CDN ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

CDN (Contents Delivery Network)๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ๋œ ์„œ๋ฒ„์—์„œ ๋ฐ›์•„์˜ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

    <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.0/gsap.min.js"></script>       // CDN ์—์„œ ์ฃผ์†Œ๋ฅผ ๋ถˆ๋Ÿฌ์˜ด
    <script>          // ์„ธ๋ถ€ ์‚ฌํ•ญ ์„ค์ •
        const slider = document.querySelectorAll(".slider");
        let currentIndex = 0;
        // let sliderCount = slider.length;
    
        setInterval(() => {
            // currentIndex = (currentIndex + 1) % sliderCount;
            // currentIndex = (currentIndex + 1) % (".slider").length;
            currentIndex = (currentIndex + 1) % slider.length;
    
            // gsap.to(document.querySelector(".slider__inner"))
            gsap.to(".slider__inner", {
                duration : 0.6,
                x : -800 * currentIndex
            });
        }, 2000);
    </script>

02. ๊ณต์‹ ๋ฌธ์„œ

๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๊ณต์‹ ๋ฌธ์„œ(Docs) ๋˜๋Š” ๋ช…์„ธ์„œ(Specification)์„ ๊ณต์‹ ์›น์‚ฌ์ดํŠธ์— ๊ณต์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ธฐ์ดˆ ์ง€์‹, ์‚ฌ์šฉ๋ฒ•, ๋ฉ”์†Œ๋“œ, ์˜ต์…˜๋“ค์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€