Че то не получается у меня точно сформулировать мысль. Надо подумать прежде чем вопрос задавать.
Надо начать с простого.
Пример демонстрирует ускорение.
function ease(n){
return Math.pow(n, 2)
};
function startAnimation(){
var element = document.getElementById('test');
var stop = false;
// animating x (margin-left) from 20 to 300, for example
var startx = 0;
var destx = 250;
var duration = 1500;
var start = null;
var end = null;
function startAnim(timeStamp) {
start = timeStamp;
end = start + duration;
draw(timeStamp);
}
function draw(now) {
if (stop) return;
if (now - start >= duration) stop = true;
var p = (now - start) / duration;
val = ease(p);
var px = startx + (destx - startx) * val;
element.style.transform = "translate("+0+"px,"+px+"px)";
requestAnimationFrame(draw);
}
requestAnimationFrame(startAnim);
}
startAnimation();
Как в данном случае замедлять элемент?