Animation.playState
Experimental
Esta es una tecnología experimental
Comprueba la Tabla de compabilidad de navegadores cuidadosamente antes de usarla en producción.
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.
Esta propiedad es de solo lectura para las Animaciones y Transiciones en CSS.
Sintaxis
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:
// 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
Specification | Status | Comment |
---|---|---|
Web Animations La definición de 'playState' en esta especificación. |
Working Draft | Initial definition. |
Compatibilidad del navegador
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 39.0 [1] | 48 (48)[2] | Sin soporte | Sin soporte | Sin soporte |
Feature | Android | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | Sin soporte | 39.0 [1] | 39.0 [1] | 48.0 (48)[2] | Sin soporte | Sin soporte | Sin soporte |
[1] Antes de Chrome 50, este atributo mostraba idle
para una animación que aún no había comenzado. A partir de Chrome 50, muestra paused
.
[2] La Web Animations API solo está habilitada por defecto en Firefox Developer Edition y Nightly builds. Puedes habilitarlo en versiones Beta y de lanzamiento estableciendo la preferencia dom.animations-api.core.enabled
en true
, y puedes deshabilitarlo en cualquier versión de Firefox estableciendo esta propiedad en false
.
Ver también
- Web Animations API
Animation
para otros métodos y propiedades que puede usar para controlar la animación de la página web.- Los métodos
Animation.play()
,Animation.pause()
,Animation.finish()
pueden establecer elplayState
de unAnimation
.