JavaScript 制作动画主要依赖于定时器(如 setTimeout
和 setInterval
)或者更现代的 requestAnimationFrame
API 来实现。以下是一些基础概念和相关内容:
requestAnimationFrame
可以确保动画与浏览器的刷新率同步,从而提高性能。以下是一个简单的使用 requestAnimationFrame
实现的平移动画示例:
const box = document.getElementById('box');
let start;
let progress;
function step(timestamp) {
if (!start) start = timestamp;
progress = timestamp - start;
// 移动元素
box.style.transform = `translateX(${Math.min(progress / 10, 200)}px)`;
if (progress < 2000) { // 动画持续 2 秒
requestAnimationFrame(step);
}
}
requestAnimationFrame(step);
requestAnimationFrame
来确保动画与浏览器的刷新率同步。通过以上方法,可以有效地创建和管理 JavaScript 动画,提升用户体验和应用性能。
领取专属 10元无门槛券
手把手带您无忧上云