AnimationEffect.idl 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // https://www.w3.org/TR/web-animations-1/#the-effecttiming-dictionaries
  2. dictionary EffectTiming {
  3. double delay = 0;
  4. double endDelay = 0;
  5. FillMode fill = "auto";
  6. double iterationStart = 0.0;
  7. unrestricted double iterations = 1.0;
  8. (unrestricted double or DOMString) duration = "auto";
  9. PlaybackDirection direction = "normal";
  10. DOMString easing = "linear";
  11. };
  12. // https://www.w3.org/TR/web-animations-1/#dictdef-optionaleffecttiming
  13. dictionary OptionalEffectTiming {
  14. double delay;
  15. double endDelay;
  16. FillMode fill;
  17. double iterationStart;
  18. unrestricted double iterations;
  19. (unrestricted double or DOMString) duration;
  20. PlaybackDirection direction;
  21. DOMString easing;
  22. };
  23. // https://www.w3.org/TR/web-animations-1/#the-fillmode-enumeration
  24. enum FillMode { "none", "forwards", "backwards", "both", "auto" };
  25. // https://www.w3.org/TR/web-animations-1/#the-playbackdirection-enumeration
  26. enum PlaybackDirection { "normal", "reverse", "alternate", "alternate-reverse" };
  27. // https://www.w3.org/TR/web-animations-1/#the-computedeffecttiming-dictionary
  28. dictionary ComputedEffectTiming : EffectTiming {
  29. unrestricted double endTime;
  30. unrestricted double activeDuration;
  31. double? localTime;
  32. double? progress;
  33. unrestricted double? currentIteration;
  34. };
  35. // https://www.w3.org/TR/web-animations-1/#the-animationeffect-interface
  36. [Exposed=Window]
  37. interface AnimationEffect {
  38. EffectTiming getTiming();
  39. ComputedEffectTiming getComputedTiming();
  40. undefined updateTiming(optional OptionalEffectTiming timing = {});
  41. };