Обнаружив requestAnimationFrame
всего лишь минуту назад, я погрузился во всю информацию, которую я мог найти об этом. Чтобы назвать только некоторые из ресурсов, которые я натолкнулся, если есть другие, которые ищут дополнительную информацию об этом:
- http://creativejs.com/resources/requestanimationframe/ - объясняет основы этого.
- http://www.html5rocks.com/en/tutorials/speed/animations/ - объясняет, как его использовать.
В любом случае, все эти ресурсы говорят мне о том, как работает requestAnimationFrame
или как он может/должен использоваться, но никто из них не говорит мне, когда это правильно использовать.
- Должен ли я использовать его для анимаций (повторяющиеся изменения в стиле элемента, подобно анимации CSS)?
- Должен ли я использовать его, когда автоматическое событие хочет изменить CSS/классы одного или нескольких элементов?
- Должен ли я использовать его, когда автоматическое событие хочет изменить текстовое значение одного или нескольких элементов? (например, обновление значения часов один раз в секунду)
- Должен ли я использовать его, когда автоматическое событие хочет изменить DOM?
- Должен ли я использовать его, когда автоматическому событию нужны такие значения, как .offsetTop,.offsetLeft, а затем хочет изменить стили, такие как верхний и левый несколько строк?
- Должен ли я использовать его, когда пользовательское событие вызывает какие-либо из перечисленных выше изменений?
TL; DR: Когда правильно использовать requestAnimationFrame?