我在理解javascript代码时遇到了问题。这是我在javascript中的第一步,我正在尝试制作Javascript幻灯片。请解释我如何
var timePassed = new Date - start; **and**
var progress = timePassed / opts.duration;
适用于此功能: -
<script>
function animate(opts){
var start = new Date;
var id = setInterval(function(){
var timePassed = new Date - start;
var progress = timePassed / opts.duration;
if (progress > 1){
progress = 1;
}
var delta = opts.delta(progress);
opts.step(delta);
if (progress == 1){
clearInterval(id);
opts.callback();
}
}, opts.delay || 17);
}
</script>
答案 0 :(得分:0)
timePassed
是自动画开始以来经过的时间(当前日期 - 开始日期)。
progress
是超过动画总持续时间的时间长度的比率。该值介于0和1之间(1表示动画结束)。
例如,如果opts.duration
为1000毫秒,则经过500毫秒后,进度将为500 / 1000 = 0.5
(=动画总持续时间的50%)。当progress
为1(1000/1000)时,动画完成并调用回调。