ItsEvilTime
@ItsEvilTime
Сайленсер не дает мне покоя

Проблема с остановкой requestAnimationFrame в ie, edge?

Весь день пытаюсь решить проблему, в гугле найти похожих проблем ни у кого не смог.
Суть: есть функция движения объекта за мышкой по оси X. Во всех браузерах, за исключением IE и Edge анимация плавная, в этих двух - анимация не выполняется пока мышь в движении.
Можно переписать функцию с использованием setInterval и все будет работать, но мне нужна именно requestAnimationFrame, да и в целом неплохо было бы выяснить, что я делаю не так.

Код на JSFiddle: https://jsfiddle.net/44dkk602/1/

Пояснения к коду:
animate - функция анимации, брал из учебника Ильи Кантора с добавлением проверки на отрицательность и выше единицы progress'а.
lastX - текущее положение блока
theX - текущее положение курсора
dx - вычисление расстояния на который нужно сдвинуть блок, где 3 - коэффициент того, на сколько я хочу, чтобы положение блока "отставало" от положения курсора, а 100 - это просто сдвиг всей конструкции немного вправо.
duration - продолжительность анимации
progress - изменяется от 0 до 1 за время duration
  • Вопрос задан
  • 143 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

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