blob: 61df2cd1518319c1ca949952bb58b20749b07473 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
// GENERATED CONTENT - DO NOT EDIT
// Content was automatically extracted by Reffy into webref
// (https://github.com/w3c/webref)
// Source: Web Animations Level 2 (https://drafts.csswg.org/web-animations-2/)
[Exposed=Window]
partial interface AnimationTimeline {
readonly attribute CSSNumberish? duration;
Animation play (optional AnimationEffect? effect = null);
};
[Exposed=Window]
partial interface Animation {
attribute CSSNumberish? startTime;
attribute CSSNumberish? currentTime;
};
[Exposed=Window]
partial interface AnimationEffect {
// Timing hierarchy
readonly attribute GroupEffect? parent;
readonly attribute AnimationEffect? previousSibling;
readonly attribute AnimationEffect? nextSibling;
undefined before (AnimationEffect... effects);
undefined after (AnimationEffect... effects);
undefined replace (AnimationEffect... effects);
undefined remove ();
};
partial dictionary EffectTiming {
double delay;
double endDelay;
double playbackRate = 1.0;
(unrestricted double or CSSNumericValue or DOMString) duration = "auto";
};
partial dictionary OptionalEffectTiming {
double playbackRate;
};
partial dictionary ComputedEffectTiming {
CSSNumberish startTime;
CSSNumberish endTime;
CSSNumberish activeDuration;
CSSNumberish? localTime;
};
[Exposed=Window]
interface GroupEffect {
constructor(sequence<AnimationEffect>? children,
optional (unrestricted double or EffectTiming) timing = {});
readonly attribute AnimationNodeList children;
readonly attribute AnimationEffect? firstChild;
readonly attribute AnimationEffect? lastChild;
GroupEffect clone ();
undefined prepend (AnimationEffect... effects);
undefined append (AnimationEffect... effects);
};
[Exposed=Window]
interface AnimationNodeList {
readonly attribute unsigned long length;
getter AnimationEffect? item (unsigned long index);
};
[Exposed=Window]
interface SequenceEffect : GroupEffect {
constructor(sequence<AnimationEffect>? children,
optional (unrestricted double or EffectTiming) timing = {});
SequenceEffect clone ();
};
partial interface KeyframeEffect {
attribute IterationCompositeOperation iterationComposite;
};
partial dictionary KeyframeEffectOptions {
IterationCompositeOperation iterationComposite = "replace";
};
enum IterationCompositeOperation { "replace", "accumulate" };
callback EffectCallback = undefined (double? progress,
(Element or CSSPseudoElement) currentTarget,
Animation animation);
[Exposed=Window]
interface AnimationPlaybackEvent : Event {
constructor(DOMString type, optional AnimationPlaybackEventInit
eventInitDict = {});
readonly attribute CSSNumberish? currentTime;
readonly attribute CSSNumberish? timelineTime;
};
dictionary AnimationPlaybackEventInit : EventInit {
CSSNumberish? currentTime = null;
CSSNumberish? timelineTime = null;
};
|