SlavaMaxwell
@SlavaMaxwell
HTML-верстальщик

Как увеличить скорость набора цифр в два или более раз(а)?

Есть код, который при скроле стартует и с нуля до энного количества числа увеличевается за 100 милисек, за счет i++ то есть увеличивается на 1 раз, как увеличить скорость со 100милисек но в 2 или более раз(а)?
let number = document.querySelectorAll('.js-number')

for (let i = 0; i < number.length; i++) {
  const element = number[i];
  let	numberTop = element.getBoundingClientRect().top
  let  start = +element.innerHTML, end = +element.dataset.max

  window.addEventListener('scroll', function onScroll() {
		if(window.pageYOffset > numberTop - window.innerHeight / 2) {
        this.removeEventListener('scroll', onScroll);
        
        var interval = setInterval(function() {
          element.innerHTML = ++start;
            if(start == end) {
            		clearInterval(interval);
            }
        }, 100);
    }
});
}
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Magneto903
Код ниже ускорит набор цифр в 2 раза путём снижения времени задержки с 100ms до 50ms (в 2 раза)
let number = document.querySelectorAll('.js-number')

for (let i = 0; i < number.length; i++) {
  const element = number[i];
  let	numberTop = element.getBoundingClientRect().top
  let  start = +element.innerHTML, end = +element.dataset.max

  window.addEventListener('scroll', function onScroll() {
    if(window.pageYOffset > numberTop - window.innerHeight / 2) {
        this.removeEventListener('scroll', onScroll);
        
        var interval = setInterval(function() {
          element.innerHTML = ++start;
            if(start == end) {
            		clearInterval(interval);
            }
        }, 50);
    }
});
}


Просто во втором параметре setInterval() указываете время между итерациями в милисекундах
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
18 янв. 2021, в 10:21
2000 руб./за проект
18 янв. 2021, в 10:20
30000 руб./за проект
18 янв. 2021, в 10:10
800 руб./в час