jQuery.fn.dequeue
と関数は両方とも、のnext
単なるラッパーでjQuery.dequeue
あり、両方の例で同じ引数のセットを渡します。
(jQuery 1.9.1の時点で最新)
次の関数パラメータの場合:type
はキューを示すオプションのパラメータであり、デフォルトfx
はjQueryのデフォルトのアニメーションキューです。element
DOM要素参照です。
$.fn.dequeue
:
dequeue: function( type ) {
return this.each(function() {
jQuery.dequeue( this, type );
});
}
$().dequeue
$.dequeue
jQueryオブジェクト内に含まれる各要素を呼び出すだけです。
ユースケースでは、要素が最初に。によって参照されるように1回$(this).dequeue()
呼び出します。$.dequeue
this
同様に、キューがデキューされている現在の要素である、next
への単一の要素参照を渡します。$.dequeue
next = function() {
jQuery.dequeue( elem, type );
};
言い換えれば、これらは本質的に同じです。next
反復ラッパーがないため、少し直接的です。したがって、next()
よりも数マイクロ秒高速である必要があります$.fn.dequeue()
。
.dequeue()
主な違いは、複数の要素を呼び出すことができnext()
、キューがデキューされている要素に直接関連付けられている間、各要素をデキューすることです。
コールバック内にあるユースケースの場合$(this).dequeue()
、これは関係ありません。$.fn.dequeue
1つ以上の要素のデキューを開始するときに役立ちます。$(this).dequeue()
と同等の結果がnext()
得られますが、この場合、後者はマイクロ秒のゲインを提供します。
コメントの@ExplosionPillsで指摘されているように、fx
キュー以外を処理する場合は、さらにもう1つの特徴があります。
$(this).dequeue()
引数がないtype
と、デフォルトのキュー()がデキューされるfx
ため、非fx
キューでは名前をパラメーターとしてに渡す必要がありますが.dequeue()
、.next()
作成スコープのチェーンを検索し、関数オブジェクトを作成しtype
たスコープ内を自動的に取得します。$.dequeue()
next
したがって、非キューを使用する場合は、キュー名をにfx
渡す必要がありますが、コールバックが属するキューでは常にデキューされます。$().dequeue(queueIdentifier)
.next()