7

Voici comment lier plusieurs événements sur un sélecteur de jQuery couple:Comment lier les événements jQuery sur plusieurs objets prédéfinition jQuery

$('#selector1,.selector2').bind('event', function (e, ui) { 
    // Stuff 
}); 

Mais! Comment lier les objets jQuery pré-déclarés. Exemple:

var jSelector1 = $('#selector1'); 
var jSelector2 = $('.selector2'); 

Parce que, ce qui suit ne fonctionne pas:

jSelector1,jSelector2.bind(...); 

pas plus:

$jSelector1,$jSelector2.bind(...); 
($jSelector1,$jSelector2).bind(...); 
(jSelector1,jSelector2).bind(...); 
+0

et je ne cherche pas jAllSelectors = $ ('# selector1, .selector2'); – Kyle

Répondre

9

Cela devrait fonctionner, en supposant que vos variables tenir des objets jQuery

$.each([jSelector1, jSelector2], function(i,v) { 

    v.bind(...); 

}); 
+0

putain vous me battre à – Falle1234

+0

@ Falle1234 - grands esprits :) –

+0

a fonctionné parfaitement! Merci beaucoup! – Kyle

4

vous devriez être capable de faire quelque chose comme ceci:

var jSelector1 = $('#selector1'); 
var jSelector2 = $('.selector2'); 

$.each([jSelector1, jSelector2], function(index, value) { 
    value.bind(....); 
}); 
+0

4 mins! Zut. Merci quand même! cela fonctionne aussi :) – Kyle

4

Ou vous pouvez utiliser .add().

var jSelector1 = $('#selector1'), 
    jSelector2 = $('.selector2'), 
    jSelector3 = $('.selector3'); 

jSelector1.add(jSelector2).add(jSelector3).bind('whatever', function() { 
    doSomethingAwesome(); 
}); 
Questions connexes