志田です。
先日、@ITに書かせていただいた、
が公開されました。
これで、「パターンとライブラリで作るAjaxおいしいレシピ(4)」の連載も
・第1回 jQueryを使ってTwitterをおいしくマッシュアップ (1/4) ─ @IT
・第2回 prototype.jsでYouTubeをインクリメンタルサーチ (1/3) ─ @IT
・第3回 Ext JSとprototype.jsで作るリッチなUI(1/4) ─ @IT
と、4回書かせていただきました。ご興味がありましたら是非、読んでみてください。
■本題
宣伝はさておき、今回の本題ですが、
「第4回 Ajaxの弱点を補うscript.aculo.usの楽しいエフェクト(1/4) ─ @IT」でもとりあげた、script.aculo.usによるモーショントゥイーンを実現するプログラムを、ダウンロードできるようにしました。
■デモ
script.aculo.usでこういうエフェクトができるようになります。
横方向、縦方向、それぞれのプルダウンの値を変更すると動き方が変わります。
横方向:
縦方向:
ダウンロード: easing_functions_for_scriptaculous.js (9.2KB)
このプログラムは、舘野さん(id:secondlifeさん)のJSTweenerのeasing関数を、script.aculo.usのtransitionの仕様に合うように移植したものです。
現状、いくつかのeasing関数はまだ移植できていません。移植済みのeasing関数は下記のものです。
・easeNone
・easeInQuad
・easeOutQuad
・easeInOutQuad
・easeInCubic
・easeOutCubic
・easeInOutCubic
・easeOutInCubic
・easeInQuart
・easeOutQuart
・easeInOutQuart
・easeOutInQuart
・easeInQuint
・easeOutQuint
・easeOutSine
・easeInOutSine
・easeInExpo
・easeOutExpo
・easeInCirc
・easeOutCirc
・easeInBack
・easeOutBack
・easeOutBounce
まだ結構未移植のものがあるのですが、忙しくなって来たのでとりあえず公開をさせていただきました。
反響があれば残りも移植していきたいと思います。
■利用の仕方
このプログラムをダウンロードして、prototype.jsやscript.aculo.usを読み込むのに加えて、<script>タグでこのプログラムも読み込ませます。
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" src="scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="easing_functions_for_scriptaculous.js"></script>
あとは、通常のtransitionの指定の仕方と同じで、下記のように指定できます。
new Effect.Move($('target'),
{x: x,
y: y,
transition: Effect.Transitions.easeOutBounce});
■ライセンス
JSTweenerと同じ、MIT Lisenseです。
よろしければご利用ください。