- 2008-02-18 (月) 22:54
- JavaScript
忘れそうなので、jQuery Easing Pluginの使い方を書いておく。
読み込み
jQuery本体を読み込んでから、Easing Pluginを読み込む。
<script type="text/javascript" src="jquery-1.2.3.js"></script>
<script type="text/javascript" src="jquery.easing.1.3.js"></script>
イージングの指定
slideUpやfadeOutなどのエフェクトで、プラグインで定義されたイージングを使いたい場合、以下の書き方をする。
$(element).slideUp({
duration: 1000,
easing: method,
complete: callback
});
この書き方についての説明も、なんでこれでOKなのかも、jQueryのサイトのドキュメントに書いてない気がする。いい機会なのでソースを読んでみたけど、これでOKっぽい。
animateと一緒に使う場合は、ドキュメントにある通りにeasingに”easeInCubic”とか指定する。
animate( params, [duration], [easing], [callback] )
{duration: 1000, ... complete: callback}の部分で指定できるオプションについては、ドキュメントのanimate( params, options )のページのoptionの部分で説明されている。
デフォルトのイージング
Easing Pluginを読み込むと、デフォルトのイージングが、swingからeaseOutQuadに変更される。jQueryで定義されていた、swingはjswingという名前に変更され、イージングにswingを指定しても、jQuery.easing.defで指定したイージングが呼ばれるように変更されている。
デフォルトで使われるイージングを変更したい場合は、以下のようにして指定する。
jQuery.easing.def = "easeInElastic";
独自のイージング
プラグインと同じ方法でjQueryのオブジェクトを拡張して、かくかく動くイージングを作ってみた。書き方これでいいんだろうか。
<script src="http://www.regulus8.com/blog/wp-content/uploads/2008/02/js/jquery-1.2.3.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
jQuery.extend(jQuery.easing,{
step: function (x, t, b, c, d) {
return c*((t=Math.round((t+0.5)/200)*200)/d) + b;
}
});
$("#start").click(function(){
$("#box").slideToggle({duration: 1000, easing: "step"});
});
});
</script>
<input id="start" value="start" type="button">
<div id="box" style="width:200px;height:200px;color:white;background:red;">#box</div>
jQueryのパスを間違えていたので直しました。
使ってるプラグインの動作を追いつつ、jQueryのソースを読むと楽しいと思う。
- Newer: Mixwitでオンラインで聴けるデモテープをつくってみた
- Older: 投稿の一部分を自動整形しないプラグイン
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://www.regulus8.com/blog/2008/02/18/41/trackback
- Listed below are links to weblogs that reference
- jQuery Easing Pluginの使い方 from regulus8.com