私のプロジェクトでは、キャッシュされたセレクターを使用して高速化し、改善を確認しています:(ドキュメント内の検索を減らすため)
var sel1 = $('#selector1');
var sel2 = $('#selector2');
この状況でキャッシュされたセレクターを使用するにはどうすればよいですか? 例:
$('#selector1, #selector2').fadeTo(300, 1, 'linear');
それは私のコードを磨くだけです
タイ:)
私のプロジェクトでは、キャッシュされたセレクターを使用して高速化し、改善を確認しています:(ドキュメント内の検索を減らすため)
var sel1 = $('#selector1');
var sel2 = $('#selector2');
この状況でキャッシュされたセレクターを使用するにはどうすればよいですか? 例:
$('#selector1, #selector2').fadeTo(300, 1, 'linear');
それは私のコードを磨くだけです
タイ:)
.add()
「一致した要素のセットに要素を追加する」ために使用できます。
sel1.add(sel2).fadeTo(300, 1, 'linear');
のドキュメント.add()
: http://api.jquery.com/add
.add()
取り入れることができます:
$('<selector>', <context>)
)DOM 要素の配列を jQuery に渡すこともできます。
var one = $('#one')[0],
two = $('#two')[0];
$([one, two]).fadeTo(300, 1, 'linear');
ここにデモがあります:http://jsfiddle.net/3xJzE/
アップデート
現在回答されている 3 つの異なるメソッドの jsperf を作成しました: http://jsperf.com/jquery-fadeto-once-vs-twice (配列セレクターを使用するのが最速のようです$([one, two]).fadeTo...
:)
.add()
そのためにメソッドを使用できます。
sel1.add(sel2).fadeTo(300, 1, 'linear');
$
変数に名前を付けるときにプレフィックスを追加するとよいでしょう。このようにして、それらを標準の JavaScript オブジェクトと区別することができます。したがって、これはより良いです:
var $sel1 = $('#selector1');
var $sel2 = $('#selector2');
$sel1.add($sel2).fadeTo(300, 1, 'linear');
jQueryの追加
sel1.add(sel2).fadeTo(300, 1, 'linear');
セレクターが既に保存されている場合は、それぞれに個別に fadeTo を適用するだけです。とにかく、JQueryはセレクターを解析する必要があります...
sel1.fadeTo(300, 1, 'linear');
sel2.fadeTo(300, 1, 'linear');
これを試して
sel1.add(sel2).fadeTo(300, 1, 'linear');