我需要在动画分为步骤期间的时间精度。
进度条的宽度每 100ms 增加 20 个像素。我使用 jQueryanimate()
为宽度设置动画。
Logging Date.now()
,很明显时间变化了,而且不准确。
http://jsfiddle.net/trustweb/az3aE/23/
function animateProgress() {
console.log(Date.now() - progressTime);
progressTime = Date.now();
progress_width = $(progress).width();
if (progress_width < progressLimit) {
$(progress).animate(
{ width: '+=20' }, '' + progressTime, "linear", animateProgress
);
}
}
我一直在阅读requestAnimationFrame
,我想这是正确的方法;如何将上述功能转换为使用requestAnimationFrame
,或以其他方式实现精确计时?