Web Animations API
==================

**Экспериментальная возможность:** **Это экспериментальная технология**  
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

API веб-анимации позволяет синхронизировать и сроки изменения представления веб-страницы, то есть анимации элементов DOM. Она делает это путём объединения двух моделей: Модель синхронизации и анимации модели.

Основные понятия и использование API
------------------------------------

Web Animations API (API веб-анимации) обеспечивает общий язык для браузеров и разработчиков для описания анимации элементов DOM. Для более подробной информации о концепциях, заложенных в API, и о его использовании, прочтите статью Использование Web Animations API.

Интерфейсы веб-анимации
-----------------------

`Animation`

Обеспечивает элементы управления воспроизведением и временную шкалу для узла анимации или источника. Можно взять объект, созданный с помощью `KeyframeEffect()` конструктор.

`KeyframeEffect` (en-US)

Описывает наборы анимируемых свойств и значений, называемых **ключевыми кадрами** и их параметры синхронизации (en-US). Они могут затем быть воспроизведены с помощью  `Animation()` (en-US) конструктор.

`AnimationTimeline` (en-US)

Представляет график анимации. Этот интерфейс существует, чтобы определить особенности временной шкалы (наследуемые интерфейсом `DocumentTimeline` (en-US) и другими интерфейсами в будущем) и не предназначен для непосредственного использования разработчиками.

`DocumentTimeline` (en-US)

Представляет временные рамки анимации, в том числе временные рамки анимации по умолчанию для документа (через свойство `Document.timeline` (en-US)).

`AnimationEffectTiming`

Объект, содержащий временные свойства, возвращённые `сроки` атрибут `KeyframeEffect` (en-US). Он наследует свои свойства от `AnimationEffectTimingReadOnly`, но в не только чтение формы.

`SharedKeyframeList`

Представляет собой последовательность ключевых кадров , которые могут быть разделены между `KeyframeEffect` (en-US) объектов. Используя `SharedKeyframeList` объекты, несколько `KeyframeEffect` объектов могут повторно использовать одни и те же ключевые кадры , не заплатив стоимость разбора их несколько раз.

`AnimationEffectTimingProperties` (en-US)

`Element.animate()`, `KeyframeEffectReadOnly.KeyframeEffectReadOnly()` (en-US) и `KeyframeEffect.KeyframeEffect()` все принимают необязательный словарь объект синхронизации свойств.

Расширения для других интерфейсов
---------------------------------

API веб - анимации добавляет некоторые новые функции в **`документ`** и **`элемент`.**

### Расширения `Document` интерфейса

`document.timeline` (en-US)

`DocumentTimeline` Объект , представляющий документ по умолчанию временную шкалу.

`document.getAnimations()` (en-US)

Возвращает массив `Анимация` объектов в настоящее время действуют на элементах в `document`.

### Расширения `Element` интерфейса

`Element.animate()`

Способ быстрого доступа для создания и воспроизведения анимации на элементе. Она возвращает созданный `Анимация` экземпляра объекта.

Веб-анимация для чтения только интерфейсы
-----------------------------------------

Следующие интерфейсы включены в спецификации для таких целей, как определение функции, используемые в нескольких других местах, или служить в качестве основы для нескольких интерфейсов, которые могут быть использованы в качестве значений одних и тех же свойств. Вы бы не напрямую использовать их в работе веб-разработки, но они могут быть интересны для авторов библиотеки, чтобы понять, как эта технология работает, так что их реализации могут быть более эффективными, или для инженеров браузеров, которые ищут более лёгкой ссылки, чем спецификация обеспечивает.

`AnimationEffectTimingReadOnly`

Словарь объект временных свойств, которые наследуются изменяемом `AnimationEffectTiming` интерфейс, связанный с `KeyframeEffect` (en-US).

`AnimationEffectReadOnly` (en-US)

Определяет текущие и будущие "Анимационные эффекты" , как `KeyframeEffect` (en-US), который может быть передан `Анимация` объектов для воспроизведения, и `KeyframeEffectReadOnly` (en-US) который используется `KeyframeEffect` (en-US) (наследуется CSS Animations и Transitions (en-US) ). Все значения `Animation.effect` (en-US) имеют типов на основе `AnimationEffectReadOnly`.

`KeyframeEffectReadOnly` (en-US)

Описывает наборы Animatable свойств и значений, которые могут быть воспроизведены с помощью `анимация()` (en-US) конструктор, и которые унаследованы `KeyframeEffect` (en-US).

Спецификации
------------

| Specification |
| --- |
| Web Animations  |

Совместимость с браузерами
--------------------------

{{Compat}}Смотрите также
--------------

* Использование веб-API Animations
* Web демки Анимации
* Polyfill
* Текущая реализация браузера Firefox: AreWeAnimatedYet
* Тест Поддержка браузеров