Показать сообщение отдельно
  #8 (permalink)  
Старый 04.02.2020, 09:18
Интересующийся
Отправить личное сообщение для potatosboxon Посмотреть профиль Найти все сообщения от potatosboxon
 
Регистрация: 08.11.2019
Сообщений: 11

Че то не получается у меня точно сформулировать мысль. Надо подумать прежде чем вопрос задавать.
Надо начать с простого.
Пример демонстрирует ускорение.
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();

Как в данном случае замедлять элемент?

Последний раз редактировалось potatosboxon, 04.02.2020 в 10:41.
Ответить с цитированием