SuperAPI AI 工具集

animation-performance

设计与创作

查看项目

更新于 10-16 12:32

技能介绍

用途:诊断已实测到的网页动画卡顿、掉帧、布局/绘制开销、主线程工作与合成器行为,并基于证据选择动画驱动方案。

主要能力:建立基线——复现具体交互(含快速反向及导航、水合、数据加载、大列表等负载),记录浏览器、库版本、视口、设备、刷新率与动效偏好;60 Hz 帧预算约 16.7 ms,120 Hz 约 8.3 ms。采集含帧时序、主线程、样式/布局、绘制与图层信息的浏览器性能录制,必要时标注无法验证的设备覆盖。随后把以下情况作为假设去验证:长 JavaScript 任务与掉帧重叠、每次指针或动画更新都触发 React 渲染、大子树重复布局、大量或重复绘制、图层数与内存增长、开销随后代增多。

渲染成本与驱动方式相互独立:transform 和 opacity 通常较省,可避开布局与绘制;尺寸与文档流变化在交互需要时也可接受,需测量影响区域。滤镜、裁剪、颜色与 SVG 的绘制/合成行为依赖效果与浏览器,替换属性前要同时验证视觉语义。驱动方式需核实:requestAnimationFrame 回调与主线程工作竞争;CSS 或 Web Animations API 可能避开逐帧 JavaScript,但不保证加速;Motion 混合引擎会按特性、属性与版本选择浏览器 API 或 JavaScript,不应因页面繁忙就把 motion/react 组件一律当作纯 JavaScript 或用 CSS 替换。

最小修复:移除不必要的逐帧 React 更新,使用现有 motion values 或有清理的有界命令式动画;在保留几何、焦点、命中测试、隐藏状态与滚动行为的前提下减少可避免的布局/绘制;离屏时暂停装饰性循环;继承式 CSS 变量更新若确测量到样式重算,测试更局部的更新;大模糊主导绘制/合成时减小面积、半径或频率并对比录制;仅在跟踪数据证明有益时添加 targeted will-change,闲置时尽量移除并对比图层数。

验证与报告:以相同负载复测,比较瓶颈与帧时序,验证快速中断、键盘/触摸、两种动效偏好及相关浏览器。报告复现步骤、观察到的原因、更改行为、前后测量与局限;无对比证据时不得宣称保证帧率或把库迁移说成性能修复。