教程 animejs tutorial

常见错误排查

在使用 Anime.js 开发动画时,可能会遇到一些常见问题。了解这些错误及其排查方法,可以大幅提升开发效率。

1. 动画不执行或无效果

  • 原因:
    • 目标元素选择器错误,找不到对应元素。
    • 动画属性设置错误,如无效的 CSS 属性或值。
    • 动画时间设置为 0 或被意外暂停。
  • 排查建议:
    • 检查目标选择器是否正确。
    • 在控制台输出目标元素确认是否存在。
    • 确认动画属性和数值是否正确。
    • 检查动画是否被暂停或提前结束。

2. 报错 Uncaught SyntaxError 或变量重复声明

  • 原因:
    • 在同一作用域多次用 const 或 let 声明同名变量。
    • 脚本被重复加载执行。
  • 排查建议:
    • 使用 var 或立即执行函数(IIFE)避免变量污染。
    • 确认脚本只加载执行一次。

3. 页面卡顿或动画掉帧

  • 原因:
    • 动画属性导致频繁重排或重绘(如 width、height、top 等)。
    • 同时执行动画数量过多。
    • 缺乏硬件加速支持。
  • 排查建议:
    • 优先使用 transform 和 opacity。
    • 控制同时运行动画数量。
    • 使用浏览器性能工具定位瓶颈。

4. 动画顺序错乱或时间轴问题

  • 原因:
    • 时间轴配置错误,导致动画重叠或延迟。
  • 排查建议:
    • 仔细检查 timeline 中的 offset 设置。
    • 使用回调函数确认动画执行顺序。

5. 动画样式未恢复

  • 原因:
    • 动画结束后样式未重置。
  • 排查建议:
    • 使用 complete 回调手动恢复样式。
    • 设置 fill 属性或使用 CSS 初始样式。

示例:避免变量重复声明错误

html
<script>
(function() {
  var box = document.querySelector('.box');
  // 动画代码
})();
</script>

`