--- title: "5.3 动画与交互库" description: "Motion、GSAP、Three.js...让页面'动'起来的选项" --- # 5.3 动画与交互库 > **本节目标**:了解主流动画库的定位,学会根据需求选择合适的动画方案,掌握与 AI 配合的提示词技巧。 一个恰到好处的动画,能让页面从"能用"变成"好用"。但过度动画会让用户头晕。老师傅说:"好动画应该是用户几乎察觉不到的——它只是让交互更流畅,而不是抢戏。" ## Motion(原 Framer Motion)—— React 动画首选 [Official Motion Examples | React, JS & Vue Animations](https://motion.dev/examples) Motion(包名 `motion`,前身是 `framer-motion`)是 React 生态最流行的动画库,GitHub 30,000+ Star。你只需要描述"动画结束时元素长什么样",Motion 自己算出中间过程——和 React"描述结果而非步骤"的写法一致。  **常用动画场景和提示词**: | 你想要的效果 | 告诉 AI | |------------|---------| | 元素淡入 | "用 Motion 给这个卡片加淡入动画" | | 列表逐个出现 | "用 Motion 的 staggerChildren 让列表项依次淡入" | | 拖拽排序 | "用 Motion 的 Reorder 组件实现拖拽排序" | | 页面切换动画 | "用 Motion 的 AnimatePresence 做页面过渡" | | 滚动触发动画 | "用 Motion 的 whileInView 在元素进入视口时触发动画" | ## GSAP —— 专业级动画引擎 ## GSAP —— 专业级动画引擎 [Homepage | GSAP](https://gsap.com/) GSAP(GreenSock Animation Platform)是 Web 动画领域的老牌王者,性能极强,能做出最复杂的动画效果。  **特点**: - 性能最强,复杂动画不掉帧 - 支持时间线(Timeline),可以编排多个动画的先后顺序——类似剪辑视频时的时间轴,你可以安排哪个动画先播、哪个后播、中间隔多久 - 插件丰富:ScrollTrigger(滚动触发)、Draggable(拖拽)、MorphSVG(SVG 变形) - 不限于 React,任何框架都能用 **适合场景**: - 营销落地页的炫酷滚动动画 - 复杂的 SVG 动画和路径动画 - 需要精确控制时间线的动画序列 - 性能要求极高的场景 **提示词示例**: > "用 GSAP 的 ScrollTrigger 做一个滚动视差效果(就是你在 Apple 官网常看到的那种,背景和前景滚动速度不一样),背景图片比内容滚动慢" > "用 GSAP Timeline 做一个开场动画:先 Logo 淡入,然后标题从左滑入,最后按钮弹出"
![]() |
![]() |