本页面提供关于 anime.js 项目、其历史、社区支持和高级结构的全面信息。有关具体的 API 详情,请参阅API 参考;有关贡献指南,请参阅贡献给 anime.js。
Anime.js 是 Julian Garnier 开发的一个轻量级、多用途的 JavaScript 动画库。它提供了一个简单而强大的 API,用于创建针对各种目标的动画。
该库在 JavaScript 生态系统中获得了显著的普及,npm 和 jsDelivr 的 README 徽章中显示的高下载量证明了这一点。
来源: README.md:11-14, README.md:17-20
anime.js 库由几个关键组件组成,这些组件以分层结构组织
公共 API 暴露了两个主要函数
animate():创建动画的主要函数stagger():一个辅助函数,用于创建具有受控时间偏移的序列动画来源: README.md:31-46
Anime.js 实现了清晰的面向对象架构,具有明确的继承结构
Clock 类提供了基础计时功能,Engine(用于动画循环管理)和 Timer 类都扩展了它。JSAnimation 类处理单个动画,而 Timeline 类管理动画序列。
当使用 animate() 函数创建动画时,它会经历以下过程
这个流程高效地处理动画请求,更新值,并管理从创建到完成的动画生命周期。
Anime.js 以多种格式分发,以支持不同的 JavaScript 环境
这种多格式方法确保了在现代 JavaScript 生态系统中的广泛兼容性。
来源: README.md:25-46
项目提供了一些用于开发任务的 NPM 脚本
| 脚本 | 目的 |
|---|---|
dev | 监视 src/ 中的更改并将 ESM 版本编译到 lib/anime.esm.js |
dev-types | 在监视源代码更改时生成 TypeScript 类型 |
build | 生成类型定义并编译所有分发格式 |
test-browser | 运行浏览器测试 |
test-node | 运行 Node.js 测试 |
open-examples | 启动本地服务器以浏览示例 |
来源: README.md:63-76
anime.js 的当前 V4 版本使用 ES 模块
来源: README.md:31-46
Anime.js 是完全开源且免费使用的。正如 README 中所述:“Anime.js 100% 免费,其存在仅得益于赞助商的帮助。”
当前白金赞助商包括
该项目可以通过 GitHub Sponsors 获得支持。
来源: README.md:77-122, assets/sponsors/huly-logomark.svg, assets/sponsors/ice-open-network-logomark.svg
来源: README.md:55-61, CNAME:1
当前的主要版本是 V4,它代表了相对于先前 V3 版本的一次重大更新。提供了一份迁移指南来帮助用户更新他们的实现。
来源: README.md:55-61
Anime.js 在 MIT 许可下发布。版权所有 © Julian Garnier
来源: README.md:124