Ответы пользователя по тегу JavaScript
  • Как получить случайный элемент массива?

    dyuriev
    @dyuriev
    A posteriori
    console.log(
      myArray[
        Math.floor( Math.random() * myArray.length )
      ]
    );
    Ответ написан
    1 комментарий
  • Как сделать счетчик чисел с точкой?

    dyuriev
    @dyuriev
    A posteriori
    1. берите текущее значение, умножайте на 10
    2. инкрементируйте/декрементируйте (прибавляйте/удаляйте единцу)
    3. делите на 10
    4. округляйте до 1 знака после точки, а то js знаменит своей погрешностью при операциях с float =)


    upd: вот примерно так подправить ваш скрипт, но с округлениями не заморачивался, если где-то увидите цифры в форме 86.500000003213..., то вам домашние задание для самообразования - сделать округление перед выводом =)
    <script type="text/javascript">
        var number = document.querySelector('.number'),
        numberTop = number.getBoundingClientRect().top,
        start = +number.innerHTML*10, end = +number.dataset.max*10; //правка раз
    
        window.addEventListener('scroll', function onScroll() {
          if(window.pageYOffset > numberTop - window.innerHeight / 2) {
            this.removeEventListener('scroll', onScroll);
            var interval = setInterval(function() {
              number.innerHTML = ++start/10; //правка два
              if(start == end) {
                clearInterval(interval);
              }
            }, 5);
          }
        });
      </script>
    Ответ написан
    6 комментариев