fadeToggle( duration, easing )

jQuery API の fadeToggle( duration, easing ) は、duration に指定した速度で、easing に指定したイージング関数名の動作パターンのフェードイン/フェードアウトのアニメーションで、指定した要素の表示/非表示を切り替えるメソッド。

記述方法

jQuery( セレクター ) . fadeToggle( 速度, イージング関数名 );

「セレクター」の要素が非表示の場合、「セレクター」の要素を、「速度」に指定した速度で、「イージング関数名」に指定したイージング関数名の動作パターンのフェードインのアニメーションで表示する。

「セレクター」の要素が表示されている場合、「セレクター」の要素を、「速度」に指定した速度で、「イージング関数名」に指定したイージング関数名の動作パターンのフェードアウトのアニメーションで非表示にする。

「速度」は、ミリ秒単位の数字、もしくは、'slow'、'normal'、'fast' の文字列で指定できる。

「イージング関数名」は、'linear'、'swing' の文字列で指定できる。イージング関数は、加速度を加味したような動作パターン。jQuery にデフォルトで用意されているのは、linear と swing のシンプルな動作パターンだけだが、jQuery Easing Plugin などの jQuery プラグインを導入することで、使える動作パターンを増やすことができる。

実装例(サンプル)

fadeToggle( 2000, 'swing' ) ボタンをクリックすると:

フェードインの2秒間のアニメーションで表示

もしくは、

フェードアウトの2秒間のアニメーションで非表示

fadeToggle( 'fast', 'swing' ) ボタンをクリックすると:

フェードインの速いアニメーションで表示

もしくは、

フェードアウトの速いアニメーションで非表示

実装例(サンプル)の動作について

「 fadeToggle( 2000, 'swing' ) 」ボタンをクリックすると、「fadeToggle( 2000, 'swing' ) ボタンをクリックすると: 」の下に黄色のボックスを、2秒間のフェードインのアニメーションで表示する。「 fadeToggle( 2000, 'swing' ) 」ボタンを再度クリックすると、黄色のボックスを、2秒間のフェードアウトのアニメーションで非表示にする。

「 fadeToggle( 'fast', 'swing' ) 」ボタンをクリックすると、「fadeToggle( 'fast', 'swing' ) ボタンをクリックすると: 」の下に黄色のボックスを、速いフェードインのアニメーションで表示する。「 fadeToggle( 'fast', 'swing' ) 」ボタンを再度クリックすると、黄色のボックスを、速いフェードアウトのアニメーションで非表示にする。

実装例(サンプル)のソースコード

JavaScript

<script>
<!--
jQuery( function() {
    jQuery( '#jquery-api-fadeToggle' ) . click( function() {
        jQuery( '#jquery-api-fadeToggle-contents' ) . fadeToggle( 2000, 'swing' );
    } );
    jQuery( '#jquery-api-fadeToggle-fast' ) . click( function() {
        jQuery( '#jquery-api-fadeToggle-fast-contents' ) . fadeToggle( 'fast', 'swing' );
    } );
} );
// -->
</script>

CSS

<style>
<!--
#jquery-api-fadeToggle-contents,
#jquery-api-fadeToggle-fast-contents {
    display: none;
    padding: 10px;
    width: 400px;
    color: red;
    background-color: yellow;
    border: 1px solid gray;
    border-radius: 10px;
}
-->
</style>

HTML

<p><button id="jquery-api-fadeToggle">fadeToggle( 2000, 'swing' )</button></p>
<p>fadeToggle( 2000, 'swing' ) ボタンをクリックすると:</p>
<div id="jquery-api-fadeToggle-contents">
    <p>フェードインの2秒間のアニメーションで表示</p>
    <p>もしくは、</p>
    <p>フェードアウトの2秒間のアニメーションで非表示</p>
</div>
<p><button id="jquery-api-fadeToggle-fast">fadeToggle( 'fast', 'swing' )</button></p>
<p>fadeToggle( 'fast', 'swing' ) ボタンをクリックすると:</p>
<div id="jquery-api-fadeToggle-fast-contents">
    <p>フェードインの速いアニメーションで表示</p>
    <p>もしくは、</p>
    <p>フェードアウトの速いアニメーションで非表示</p>
</div>

スポンサード リンク

カテゴリー: API, JavaScript, jQuery, エフェクト, フェード タグ: パーマリンク