@StMechanus

Как рассчитать скорость скролла окна браузера?

Всем привет. Как рассчитать скорость скролла окна браузера? Поясню, я пытаюсь написать скролловую анимацию на странице, и мне нужно, чтобы элементы двигались на, предположим, 10-20% быстрее или медленнее чем скорость, с которой я прокручиваю страницу
  • Вопрос задан
  • 565 просмотров
Пригласить эксперта
Ответы на вопрос 2
PretorDH
@PretorDH
HTML5, CSS3, PHP, JS - люблю в чистом виде.
(function(item) {
      var mem_scroll_top=0,
            coof_scroll = 1.2; /* больше 1 быстрее, меньше 1 медленнее */
       onMyScroll = function () {
              var sTop = ($(item).scrollTop() - mem_scroll) * coof_scroll;
                    $(item).scrollTop(mem_scroll=sTop);
              
       }
       $(item).on('scroll',onMyScroll);
})('.paralax');
Ответ написан
Комментировать
butteff
@butteff
Раз в тысячу лет заправляю свитер в носки
скорость - это расстояние, деленное на время.
Расстояние можно брать документа или окна браузера в пикселях:

doc_w = $(document).width();
doc_h = $(document).height();
//или
win_w = $(window).width();
win_h = $(window).height();


Время же можно получить с помощью объекта date и методов работы с ним:
var date = new Date();
 alert( date.getHours() );

Это мы берем часы, например. Более подробная инфа об этих методах есть в гугле.

Соответственно все, что остается - это делить пройденное расстояние на время.
Пройденную высоту можно брать с помощью метода scrollTop в jquery:
var s = $('#element').scrollTop();

Я надеюсь, что эта информация поможет Вам реализовать задачу.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы