Formation PUB040 : JavaScript et autres bibliothèques côté client, 2020 jQuery

7.4 Les sélecteurs jQuery


La syntaxe de base pour retrouver un élément avec jQuery sera sous la forme :

Syntaxe jQuery

let $variable = $("selecteur");

Par exemple, l'instruction suivante permet d'appliquer une méthode jQuery nommée animate() à tout les liens qui ont la classe animer :

jQuery

let $liens = $("a.animer");
$liens.animate(...);

Dans cet extrait de code, on retrouve :

  • L'alias jQuery($) suivi de parenthèses.
  • Entre les parenthèses, un sélecteur jQuery. C'est lui qui détermine quels éléments du DOM seront sélectionnés. On peut utiliser les apostrophes ou les guillemets pour entourer le sélecteur.
  • Le tout est suivi d'un point puis de la propriété ou la méthode désirée.

Sélecteurs jQuery vs sélecteurs CSS

À la base, les sélecteurs jQuery sont très semblables aux sélecteurs CSS. Voici les principaux sélecteurs qui vous seront utiles :

  • On peut utiliser directement le nom d'une balise.

    Ex :

    CSS

    img {

       ...

    }

    jQuery

    $("img"). ...;

    On aurait pu obtenir un résultat équivalent à la sélection jQuery en utilisant le code JavaScript suivant, qui manipule directement le DOM :

    JavaScript

    let lesImages = document.getElementsByTagName('img');

    for (let i = 0; i < lesImages.length; i++) {

       ...

    }

  • Le point permet d'identifier les éléments auxquels une classe est appliquée

    Ex :

    CSS

    .important {

       ...

    }

    jQuery

    $(".important"). ...;

    Le résultat sera le même si on utilise directement JavaScript pour manipuler le DOM :

    JavaScript

    let lesImportants = document.getElementsByClassName('important');

    for (let i = 0; i < lesImportants .length; i++) {

       ...

    }

  • le # permet d'identifier les éléments par leur ID
    CSS

    #contenu {

       ...

    }

    jQuery

    $("#contenu"). ...;

    L'utilisation du sélecteur jQuery aurait pu être remplacée par le code JavaScript suivant qui, ici encore, manipule le DOM directement. Notez que puisque getElementById() ne retourne qu'un seul élément, il n'y a pas lieu de faire une boucle comme lors de la sélection par classe ou par nom de balise.

    JavaScript

    document.getElementById('contenu'). ...;

  • Pour sélectionner un élément qui est imbriqué dans un autre, on les séparera par un espace. Par exemple, si on veut sélectionner les images sur lesquelles il y a un lien (images qui sont placées dans une balise <a>) : 
    CSS

    a img {

       ...

    }

    jQuery

    $("a img"). ...;

  • Pour sélectionner les éléments qui possèdent un attribut particulier :
    CSS

    input[type=text] {

       ...

    }

    jQuery

    $("input[type=text]"). ...;

  • Il est également possible d'utiliser l'étoile pour sélectionner tous les éléments.
    CSS

    * {

       ...

    }

    jQuery

    $("*"). ...;

  • etc.

Il existe d'autres sélecteurs qui sont propres à jQuery :

  • :hidden pour sélectionner les éléments cachés.
    jQuery

    $("div:hidden"). ...;

  • :visible pour sélectionner les éléments visibles.
    jQuery

    $("img:visible"). ...;

  • :first pour sélectionner le premier élément.
    jQuery

    $("tr:first"). ...;

  • :last pour sélectionner le dernier.
    jQuery

    $("tr:last"). ...;

  • etc.

Pour plus d'information

« Category: Selectors ». jQuery. http://api.jquery.com/category/selectors/

« Try jQuery selectors ». w3schools. http://www.w3schools.com/jquery/trysel.asp

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !
Soumettre