أو التثبيت عبر npm:
npm install gsap
الآن، GSAP جاهز للاستخدام في مشروعك.
في جوهره، يقوم GSAP بتحريك أي خاصية لعنصر DOM. فيما يلي مثال بسيط لتحريك عنصر مربع من النقطة أ إلى النقطة ب.
HTML:
CSS:
.box { width: 100px; height: 100px; background-color: red; position: absolute;}
جافا سكريبت GSAP:
gsap.to(\\\".box\\\", { x: 300, duration: 2});
في هذا المثال، يقوم GSAP بنقل عنصر .box بمقدار 300 بكسل على طول المحور السيني خلال ثانيتين. يتم استخدام الأسلوب gsap.to() لتحريك الخصائص من قيمتها الحالية إلى قيمة جديدة.
gsap.to(\\\".box\\\", { x: 300, duration: 1 });
gsap.from(\\\".box\\\", { opacity: 0, duration: 1 });
gsap.fromTo(\\\".box\\\", { opacity: 0 }, { opacity: 1, duration: 1 });
في كثير من الأحيان، ستحتاج إلى إنشاء سلسلة من الرسوم المتحركة التي تحدث واحدة تلو الأخرى. يوفر GSAP ميزة gsap.timeline()، مما يسمح لك بإنشاء رسوم متحركة معقدة في سلسلة.
const tl = gsap.timeline();tl.to(\\\".box\\\", { x: 300, duration: 1 }) .to(\\\".box\\\", { y: 200, duration: 1 }) .to(\\\".box\\\", { rotation: 360, duration: 1 });
هنا، سيتحرك المربع . أولاً أفقيًا إلى 300 بكسل، ثم عموديًا إلى 200 بكسل، وأخيرًا، سيتم تدويره بمقدار 360 درجة. يحدث كل إجراء بالتسلسل مع الجدول الزمني لإدارة الطلب.
يوفر GSAP مجموعة متنوعة من وظائف التخفيف التي تتحكم في كيفية تقدم الرسوم المتحركة بمرور الوقت، مما يجعل الرسوم المتحركة أكثر طبيعية. التخفيف الافتراضي هو power1.out، ولكن يمكنك تغييره إلى وظيفة تخفيف مختلفة للحصول على تأثيرات مختلفة.
gsap.to(\\\".box\\\", { x: 300, duration: 2, ease: \\\"bounce.out\\\"});
تشمل وظائف التخفيف الشائعة ما يلي:
تسمح لك هذه بإنشاء تأثيرات نطاطة أو مرنة أو سهلة الإدخال/الإخراج والتي تضفي الحيوية على الرسوم المتحركة الخاصة بك.
يمكنك استهداف عناصر متعددة في وقت واحد باستخدام GSAP عن طريق تحديد الفئة أو محدد العنصر. ستقوم المكتبة بتحريك جميع العناصر المطابقة في وقت واحد.
gsap.to(\\\".box\\\", { x: 300, duration: 2 });gsap.to(\\\".circle\\\", { y: 200, duration: 1 });
يمكنك أيضًا تمرير مجموعة من العناصر:
gsap.to([ \\\".box\\\", \\\".circle\\\" ], { rotation: 180, duration: 2 });, { التدوير: 180, المدة: 2 });
يوفر GSAP أيضًا مكونًا إضافيًا قويًا يسمى ScrollTrigger
، والذي يسمح لك بإنشاء رسوم متحركة قائمة على التمرير دون عناء. تتيح لك هذه الميزة تشغيل الرسوم المتحركة أثناء التمرير لأسفل الصفحة.
لاستخدامه، قم أولاً بتضمين المكون الإضافي:
مثال أساسي:
","image":"http://www.luping.net/uploads/20241013/1728802469670b6ea58846a.jpg","datePublished":"2024-10-31T21:20:34+08:00","dateModified":"2024-10-31T21:20:34+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
عندما يتعلق الأمر ببناء مواقع ويب جذابة وجذابة بصريًا، تلعب الرسوم المتحركة دورًا حاسمًا في تحسين تجربة المستخدم. على الرغم من توفر العديد من مكتبات الرسوم المتحركة، إلا أن أبرزها هو GreenSock Animation Platform (GSAP). GSAP هي مكتبة جافا سكريبت قوية تسمح لك بإنشاء رسوم متحركة سريعة وسلسة ومتعددة المتصفحات بأقل قدر من التعليمات البرمجية.
في هذه المدونة، سنغطي أساسيات استخدام GSAP لإنشاء رسوم متحركة مذهلة، حتى لو كنت بدأت للتو. دعونا نتعمق في كيفية الرسوم المتحركة باستخدام GSAP.
إليك بعض الأسباب التي تجعل GSAP هي الأداة التي يستخدمها العديد من المطورين:
للبدء، ستحتاج إلى تضمين GSAP في مشروعك. يمكنك إما استخدام CDN أو تثبيته عبر npm إذا كنت تستخدم أداة تجميع مثل Webpack أو Parcel.
استخدام CDN:
أو التثبيت عبر npm:
npm install gsap
الآن، GSAP جاهز للاستخدام في مشروعك.
في جوهره، يقوم GSAP بتحريك أي خاصية لعنصر DOM. فيما يلي مثال بسيط لتحريك عنصر مربع من النقطة أ إلى النقطة ب.
HTML:
CSS:
.box { width: 100px; height: 100px; background-color: red; position: absolute; }
جافا سكريبت GSAP:
gsap.to(".box", { x: 300, duration: 2 });
في هذا المثال، يقوم GSAP بنقل عنصر .box بمقدار 300 بكسل على طول المحور السيني خلال ثانيتين. يتم استخدام الأسلوب gsap.to() لتحريك الخصائص من قيمتها الحالية إلى قيمة جديدة.
gsap.to(".box", { x: 300, duration: 1 });
gsap.from(".box", { opacity: 0, duration: 1 });
gsap.fromTo(".box", { opacity: 0 }, { opacity: 1, duration: 1 });
في كثير من الأحيان، ستحتاج إلى إنشاء سلسلة من الرسوم المتحركة التي تحدث واحدة تلو الأخرى. يوفر GSAP ميزة gsap.timeline()، مما يسمح لك بإنشاء رسوم متحركة معقدة في سلسلة.
const tl = gsap.timeline(); tl.to(".box", { x: 300, duration: 1 }) .to(".box", { y: 200, duration: 1 }) .to(".box", { rotation: 360, duration: 1 });
هنا، سيتحرك المربع . أولاً أفقيًا إلى 300 بكسل، ثم عموديًا إلى 200 بكسل، وأخيرًا، سيتم تدويره بمقدار 360 درجة. يحدث كل إجراء بالتسلسل مع الجدول الزمني لإدارة الطلب.
يوفر GSAP مجموعة متنوعة من وظائف التخفيف التي تتحكم في كيفية تقدم الرسوم المتحركة بمرور الوقت، مما يجعل الرسوم المتحركة أكثر طبيعية. التخفيف الافتراضي هو power1.out، ولكن يمكنك تغييره إلى وظيفة تخفيف مختلفة للحصول على تأثيرات مختلفة.
gsap.to(".box", { x: 300, duration: 2, ease: "bounce.out" });
تشمل وظائف التخفيف الشائعة ما يلي:
تسمح لك هذه بإنشاء تأثيرات نطاطة أو مرنة أو سهلة الإدخال/الإخراج والتي تضفي الحيوية على الرسوم المتحركة الخاصة بك.
يمكنك استهداف عناصر متعددة في وقت واحد باستخدام GSAP عن طريق تحديد الفئة أو محدد العنصر. ستقوم المكتبة بتحريك جميع العناصر المطابقة في وقت واحد.
gsap.to(".box", { x: 300, duration: 2 }); gsap.to(".circle", { y: 200, duration: 1 });
يمكنك أيضًا تمرير مجموعة من العناصر:
gsap.to([ ".box", ".circle" ], { rotation: 180, duration: 2 });, { التدوير: 180, المدة: 2 });
يوفر GSAP أيضًا مكونًا إضافيًا قويًا يسمى ScrollTrigger
، والذي يسمح لك بإنشاء رسوم متحركة قائمة على التمرير دون عناء. تتيح لك هذه الميزة تشغيل الرسوم المتحركة أثناء التمرير لأسفل الصفحة.
لاستخدامه، قم أولاً بتضمين المكون الإضافي:
مثال أساسي:
هنا، سيتم تحريك عنصر .box عند دخوله إلى إطار العرض أثناء تمرير المستخدم.
GSAP هي مكتبة قوية ومتعددة الاستخدامات لإنشاء الرسوم المتحركة على الويب. سواء كنت تقوم بتحريك زر، أو إنشاء تأثيرات معقدة قائمة على التمرير، أو إنشاء تجربة كاملة تعتمد على الرسوم المتحركة، فإن GSAP يجعلها واضحة من خلال تركيبها البديهي ومجموعة غنية من الميزات.
إذا كنت قد بدأت للتو، فلا تشعر بالإرهاق! جرب بعض الرسوم المتحركة الأساسية واستكشف تدريجيًا مفاهيم أكثر تقدمًا مثل المخططات الزمنية ومشغلات التمرير. يحتوي GSAP على وثائق ممتازة سترشدك خلال كل شيء بدءًا من الرسوم المتحركة للمبتدئين وحتى الرسوم المتحركة المتقدمة.
ابدأ بالتجربة، وسترى بسرعة كيف يمكن لـ GSAP تحويل مشاريع الويب الخاصة بك إلى تجارب تفاعلية جذابة!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3