[Edge]△。実験的。→
実験的: これは実験的な機能です。本番で使用する前にブラウザー互換性一覧表をチェックしてください。
element に指定のアニメーションを適用し再生します。Animation オブジェクトも返されます。
mdn: このメソッドは、新たに Animation の作成、対象要素への適用、そしてアニメーションの再生を行うショートカット メソッドです。
戻り値として Animation オブジェクトのインスタンスを返します。
element | Element。 |
---|---|
keyframes | キーフレーム オブジェクトの配列、またはプロパティが反復処理可能な値の配列である単一のキーフレーム オブジェクトのどちらかです。詳しくは を参照してください。 |
options | アニメーションの再生時間(ミリ秒単位)を表す整数値、または KeyframeEffect のオプションの引数や次のオプションで記述された 1 つ以上のタイミング プロパティを含むオブジェクト。 |
id
composite
add
| 連続する各反復が最後の反復に基づいて構築される、相加効果を示します。
例として transform を挙げると、translateX(-200px) は自身よりも前に指定されていた rotate(20deg) の値を上書きすることはありませんが、合成結果は translateX(-200px) rotate(20deg) になります。 |
---|---|
accumulate
| これを指定した場合、add に似ていますがよりスマートな結果が得られ、blur(2) と blur(5) の合成結果は blur(7) になります(blur(2) blur(5) ではありません)。 |
replace
| これを指定した場合、前回の値は新しい値で上書きされます。 |
iterationComposite
pseudoElement
Animation オブジェクト。
のデモでは、上に向かって永遠に流れ続けるアニメーションが #tunnel 要素に施されています。ここでは、アニメーションを素早く作成して再生できる animate() メソッドが用いられています。keyframes として渡されているオブジェクト配列と、timing options として渡されているオブジェクトに注目してください。
document.getElementById("tunnel").animate([ // keyframes { transform: 'translate3D(0, 0, 0)' }, { transform: 'translate3D(0, -300px, 0)' } ], { // timing options duration: 1000, iterations: Infinity });
HTML:
<DIV style="position:relative; border:1px solid black; height:1.2em;"> <SPAN id=IdTest style="position:absolute">■</SPAN> </DIV>
JavaScript: 透明、移動。
IdTest.animate([ { // from opacity:0, transform:'translateX(0px)' }, { // to opacity:1, transform:'translateX(100px)' } ], 2000)
「transform:'translateX(100px)'」ではなく「left:0」「left:'100px'」でもできました。