Анимация замедления подсчета чисел Jquery при достижении цели

#javascript #jquery #jquery-animate

#javascript #jquery #jquery-анимировать

Вопрос:

 $(this).prop('Counter', 0).animate({
                            Counter: 123456789
                        }, {
                            duration: 2000,
                            easing: 'easeOutBack',
                            step: function (now) {
                                   $(this).html(parseFloat(now).toFixed(2));
                            },
                            complete: function () {
                            }
});
 

В этом кодовом номере выполняется с той же скоростью, что и до конца. Мне нужно, чтобы скорость выполнения номера замедлялась при достижении цели.

Ответ №1:

Вы можете создать переменную для скорости и включить ее в step . В вашем примере:

 var speed = 2000;
$(this).prop('Counter', 0).animate({
        Counter: 123456789
    }, {
        duration: speed,
        easing: 'easeOutBack',
        step: function (now) {
            $(this).html(parseFloat(now).toFixed(2));
            if(counter < 1000){
                speed  = 100;
            }   
        },
        complete: function () {
        }
    });