Motell(Motion of Elements List)
JavaScriptでアニメーションさせるためのライブラリMotell (Motion of Elements List) 作成中。
まだスケルトン(テスト用コード)にもなってないほどのコードですが、一応動くようになりました。
いわゆるAjax対応ブラウザのみ。現行バージョンではIEでエラーが出ることがあります。(読み込み完了のタイミングに関係します)
scriptaculous のEffectでも出来ると言えば出来るのですが、Effectの場合は連続した動作をさせるのにcallbackなどを駆使しないと行けないのと、JavaScriptの知識が必要なのですが、Motell の動作の定義はXMLファイル ですので、HTMLがわかれば、たぶん書けるんじゃないかと思います。
一応、onclick属性くらいは書く必要はありますが、読み込みと同時に動かすだけなら(ある程度条件付きですが)XMLファイルだけで可能です。
目標というか、コンセプトは「JavaScriptとデザイン(動作定義)の分離」
まぁ、HTMLとCSSの分離みたいな物で、1つのアイデア物ですね。
このくらいのアニメーション が出来るようになったら、正式に(ベータ版を(^^;)公開でしょうか。
それにしても、計算量をもっと減らさないと、動作が遅いですねぇ。。。
現バージョンでの対応は
- move
- 直線の移動
- resize
- サイズ変更(拡大、縮小)
- clip
- サイズ変更(表示区域変更)
- opacity
- 透明化
だけですが今後は
- rect
- 四角形の移動
- poly
- 直線移動の組み合わせ
- circle
- 円運動
- ellipse
- だ円運動
- calc
- 計算式指定
を検討中。
一番のネックになるのはcalcですね。
とりあえず雪を降らすようなアニメーションは簡単に出来るようにしたいです。