121 votes

Paramètres multiples pour le sélecteur jQuery?

Je regardais juste le plug-in du bouton jQueryUI et ai remarqué cette

 $("button, input:submit, a", ".demo").button();
 

Je n'ai jamais vu quelque chose comme ça. Est-ce comme plusieurs sélections dans un sélecteur jQuery?

183voto

CMS Points 315406

Le deuxième argument (".demo" dans l'exemple) est le contexte, fondamentalement, votre sélection est limitée à associer uniquement les descendants d'un contexte:

$(expr, context)

Est juste l'équivalent pour utiliser l' find méthode:

$(context).find(expr)

Donner un coup d'oeil à la documentation de la fonction jQuery:

Sélecteur De Contexte

Par défaut, les sélecteurs d'effectuer leur des recherches dans les DOM commencer à la racine du document. Toutefois, un autre contexte peut être donnée pour le rechercher à l'aide de la seconde en option paramètre de l' $() fonction. Pour exemple, si dans une fonction de rappel nous souhaitons faire une recherche pour un élément, nous pouvons restreindre cette recherche:

$('div.foo').click(function() {
  $('span', this).addClass('bar');
  // it will find span elements that are
  // descendants of the clicked element (this)
});

Notez également que le sélecteur de vous poster "button, input:submit, a", est appelé Plusieurs Sélecteur, et là, vous pouvez spécifier n'importe quel nombre de sélecteurs de combiner en un seul résultat, tout en les séparant par une virgule.

0voto

Tom Cabanski Points 4952

oui, parfaitement légal et très utile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X