[Edge]。→、、
KeyframeEffect のキーフレームを新しいキーフレームのセットに置き換えます。
| KeyframeEffect | KeyframeEffect オブジェクト。 |
|---|---|
| keyframes | キーフレーム オブジェクトまたは null。→keyframes
null に設定すると、キーフレームは一連の空のキーフレームに置き換えられます。 |
なし(undefined)。
注: キーフレームを処理できないか、形式が正しくない場合、KeyframeEffect のキーフレームは変更されません。
HTML:
<DIV id=IdTest style="width:1em">■</DIV> <SPAN id=IdLog></SPAN>
JavaScript:
KE=new KeyframeEffect( //アニメーション効果:
IdTest, //ターゲット要素。
[ //キーフレーム。
{transform:'translateX(0)', color:'red'}
, {transform:'translateX(200px)', color:'black'} //X軸移動、透明度。
],
{duration:3000, fill:'forwards'} //掛ける時間、プロパティ反映の仕方。
);
D=KE.getKeyframes();
KE.setKeyframes([
{}
,{transform:'translateX(100px)'}
,{transform:'translateY(30px)'}
]);
Ani=new Animation(KE); //アニメーション生成。
Ani.play(); //再生。
これでは、完全な置き換えになってしまった。
JavaScript:
KE=new KeyframeEffect( //アニメーション効果:
IdTest, //ターゲット要素。
[ //キーフレーム。
{transform:'translateX(0)', color:'red'}
, {transform:'translateX(200px)', color:'black'} //X軸移動、透明度。
],
{duration:3000, fill:'forwards'} //掛ける時間、プロパティ反映の仕方。
);
D=KE.getKeyframes();
D[1].transform='translateX(100px)';
D[1].computedOffset=0.5;
D[2].transform='translateY(30px)'; //エラー発生:Cannot set properties of undefined (setting 'transform')
//未定義のプロパティを設定できません (「変換」を設定)
D[2].computedOffset=1;
KE.setKeyframes(D);
Ani=new Animation(KE); //アニメーション生成。
Ani.play(); //再生。