用途:GSAP 核心提供动画的两类基本构件——补间(tween,单个动画)与时间线(timeline,补间的序列)。本技能覆盖核心方法、播放控制与最佳实践,适合在实现 GSAP 核心动画、补间、时间线编排或播放控制时使用。
安装与引入:npm install gsap;import gsap from 'gsap'。
主要能力:
- 补间方法:gsap.to(target, vars) 从当前值动画到目标值;gsap.from(target, vars) 从指定起始值动画到当前值,适合入场效果;gsap.fromTo(target, fromVars, toVars) 显式控制起止值;gsap.set(target, vars) 立即设值(零时长补间),用于初始状态。
- 时间线:gsap.timeline() 创建序列,可在构造时传入 paused、repeat、yoyo、defaults 等;通过链式 .to() 添加补间,用位置参数控制时序,如 '-=0.5'、'<'、'<0.2'、'>'、标签如 'step1'、'step1+=0.5'。
- 播放控制:play、pause、reverse、progress(0-1)、timeScale、totalProgress、restart、kill 等。
- 特殊属性:duration、delay、ease、repeat、repeatDelay、yoyo、transformOrigin、immediateRender、lazy、overwrite、id、data,以及 onStart、onUpdate、onComplete、onRepeat、onReverseComplete 回调。
- 交错动画 stagger 支持 each、from(start/center/end/edges)、grid、ease 等选项;keyframes 可在单个补间中定义多阶段。
- 实例方法:play、pause、resume、reverse、restart、kill、progress、time、timeScale、invalidate、targets、timeline、id;全局方法:gsap.killTweensOf、gsap.defaults、gsap.matchMedia、gsap.getById、gsap.ticker。
使用方式:示例见资料中的代码片段,常见模式包括入场/退场动画、悬停效果、带标签的序列编排,以及用 matchMedia 做响应式动画。
限制与注意事项:资料未提供官方定价、平台或授权信息;需注意插件须先 gsap.registerPlugin 再使用其功能;避免冲突补间,可用 overwrite 或先 kill;from() 可能产生初始闪现,可配合 CSS 初始状态或改用 fromTo;动画不再使用时及时清理。