0

異なるコンテキストのリストを検索して同じタグを選択するエレガントなソリューションを書きたい

//i have this not editable code
var c1$ = $('#context1'),
    c2$ = $('#context2'),
    c3$ = $('#context3');

//I want to improve the code and 'only from here on
var selector = 'a.select';
c1$.find(selector).css('color','red');
c3$.find(selector).css('color','red');

任意の数のコンテキストの解決策を探しています

4

3 に答える 3

8

を使用$.add()してコンテキストを構築し、それをセレクターの context パラメーター内で単一の jQuery オブジェクトとして使用できます。

var $foo = $("#foo"),
    $bar = $("#bar");

var $context = $foo.add($bar);

$("a.select", $context).css("color", "red");
于 2012-05-01T21:35:13.347 に答える
0

私の必死のエレガントではない解決策

var contexts = [$('#context1'),$('#context2'),$('#context3')];
//list of contexts in single variable(arbitrary number!)

var selector = 'a.select';
//same selector for all variable contexts

var cons$ = $([]);
//empty temporary selector

for(i in contexts)
    cons$ = cons$.add(contexts[i]);

var allmatches$ = cons$.find(selector);

//here processing allmatches$

allmatches$.css("color", "red"); 
//now apply css in one step
于 2012-05-02T23:43:12.953 に答える
0

コンテキストのリストをロードしてから、foreach を実行して各コンテキストで「a.select」を見つけてみませんか?

于 2012-05-01T23:15:56.657 に答える