使用しようとしているプラグインのリスト:
- jquery.animate-enhanced.min.js
- jquery.easing.1.3.js
基本的に、いくつかのjqueryアニメーションを「純粋なCSS3トランジション」に変換しようとしています。
これは私が取り組んでいるコードです:
$(this).animate({
bottom:(docHeight-80),
},600,
'easeOutElastic',
function(){
$(this).animate({
bottom:(docHeight-140),
},800);
}
);
これで問題なく動作しています ( http://jsfiddle.net/5dfCz/を参照)。この種のアニメーションはかなり CPU を消費するため、CSS3 で対応するトランジションを使用したいと思います。
そこで、animate-enhanced プラグインを使ってみました。これは、CSS3 を使用する場合を除いて機能します。アニメーション/トランジションが完了すると、絶対 div の bottom プロパティが保持されません。ここで jsfiddle を確認できます: http://jsfiddle.net/2p8Gu/
アニメーション後に div の位置を修正しようとすると、奇妙な効果が得られます。http: //jsfiddle.net/cAUt7/を参照してください。
また、拡張プラグインのドキュメントを読み、オプション「avoidTransforms」、「useTranslate3d」、および「leaveTransforms」を試してみましたが、これ以上成功しませんでした。
だから、私の質問:
CSS3でこの種のアニメーションを行うにはどうすればよいですか?
PS: CSS3 に変換するとイージング効果も機能しなくなりますが、実際にこの種の効果が CSS3 でサポートされているかどうか、またはその方法がわかりません。