Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.

View in English Always switch to English

Animation.playState

Baseline
Ampliamente disponible

Esta característica está consolidada y funciona en muchos dispositivos y versiones de navegador. Está disponible en todos los navegadores desde marzo de 2020.

La propiedad Animation.playState de la Web Animations API devuelve y establece un valor enumerado que describe el estado de reproducción de una animación.

Nota: Esta propiedad es de solo lectura para las Animaciones y Transiciones en CSS.

Sintaxis

js
var currentPlayState = Animation.playState;

Animation.playState = newState;

Valor

idle(inactivo)

El tiempo actual de la animación no está resuelto y no hay tareas pendientes.

pending(pendiente)

La animación está esperando que se complete una tarea pendiente.

running(funcionando)

La animación se está ejecutando.

paused(pausado)

La animación se ha suspendido y la propiedad Animation.currentTime no se está actualizando.

finished(finalizado)

La animación ha alcanzado uno de sus límites y la propiedad Animation.currentTime no se está actualizando.

Ejemplo

En el ejemplo Growing/Shrinking Alice Game , los jugadores pueden tener un final con (Alicia llorando en un mar de lágrimas) Alice crying into a pool of tears. En el juego, por razones de rendimiento, las lágrimas solo se deben animar cuando son visibles. Por lo tanto, deben detenerse tan pronto como estén animadas, de esta manera:

js
// Configurando las animaciones de lágrimas

tears.forEach(function (el) {
  el.animate(tearsFalling, {
    delay: getRandomMsRange(-1000, 1000), // cada lágrima aleatoria
    duration: getRandomMsRange(2000, 6000), // cada lágrima aleatoria
    iterations: Infinity,
    easing: "cubic-bezier(0.6, 0.04, 0.98, 0.335)",
  });
  el.playState = "paused";
});

// Reproduce las lágrimas cayendo cuando el final necesita mostrarlas.

tears.forEach(function (el) {
  el.playState = "playing";
});

// Reinicia la animación de las lágrimas y la detiene.

tears.forEach(function (el) {
  el.playState = "paused";
  el.currentTime = 0;
});

Especificaciones

Especificación
Web Animations
# dom-animation-playstate

Compatibilidad con navegadores

Ver también