Derniers tutoriels de développement web
 

HTML DOM classList Propery

<Object Élément

Exemple

Ajouter le "mystyle" classe à un <div> élément:

document.getElementById("myDIV").classList.add("mystyle");
Essayez vous - même »

Plus "Try it Yourself" - "Try it Yourself" exemples ci - dessous.


Définition et utilisation

La propriété classList renvoie la classe name(s) d'un élément, comme un objet DOMTokenList.

Cette propriété est utile pour ajouter, supprimer et activer des classes CSS sur un élément.

Cependant, la propriété classList est en lecture seule, vous pouvez le modifier en utilisant les add() et remove() méthodes.

Solution multi-navigateur: La propriété classList est pas pris en charge dans IE9 et plus tôt. Cependant, vous pouvez utiliser la className propriété ou des expressions régulières pour une solution multi-navigateur (voir "More Examples" au bas de cette page).


Support du navigateur

Les chiffres du tableau indiquent la première version du navigateur qui prend en charge entièrement la propriété.

Propriété
classList 8.0 10.0 3.6 5.1 11.5

Syntaxe

element .classList

Propriétés

Propriété La description
length Retourne le nombre de classes dans la liste.

Cette propriété est en lecture seule

méthodes

méthode La description
add( class1, class2, ... ) Ajoute un ou plusieurs noms de classe à un élément.

Si la classe spécifiée existe déjà, la classe ne sera pas ajoutée
contains( class ) Renvoie une valeur booléenne indiquant si un élément a le nom de la classe spécifiée.

Valeurs possibles:

  • vrai - l'élément contient le nom de classe spécifié
  • faux - l'élément ne contient pas le nom de classe spécifié
item( index ) Retourne le nom de la classe avec un numéro d'index spécifié d'un élément. L'index commence à 0.

Retourne null si l'indice est hors de portée
remove( class1, class2, ... ) Supprime un ou plusieurs noms de classe d'un élément.

Remarque: La suppression d' une classe qui n'existe pas, ne jette pas une erreur
toggle( class, true|false) Permet de basculer entre un nom de classe pour un élément.

Le premier paramètre supprime la classe spécifiée d'un élément, et retourne faux.
Si la classe n'existe pas, il est ajouté à l'élément, et la valeur de retour est vrai.

Le second paramètre est une valeur booléenne qui force la classe à ajouter ou retirer, peu importe si oui ou non il existait déjà. Par exemple:

Retirer une classe: élément .classList. toggle("classToRemove", false) ;
Ajouter une classe: élément .classList. toggle("classToAdd", true) ;

Remarque: Le deuxième paramètre est pas pris en charge dans Internet Explorer ou Opera 12 et plus tôt.

Détails techniques

Valeur de retour: A DOMTokenList, contenant une liste de la classe name(s) d'un élément

Exemples

autres exemples

Exemple

Ajouter plusieurs classes à un <div> élément:

document.getElementById("myDIV").classList.add("mystyle", "anotherClass", "thirdClass");
Essayez vous - même »

Exemple

Retirer une classe d'un <div> élément:

document.getElementById("myDIV").classList.remove("mystyle");
Essayez vous - même »

Exemple

Supprimer plusieurs classes à partir d' un <div> élément:

document.getElementById("myDIV").classList.remove("mystyle", "anotherClass", "thirdClass");
Essayez vous - même »

Exemple

Basculer entre deux classes pour un <div> élément:

document.getElementById("myDIV").classList.toggle("newClassName");
Essayez vous - même »

Exemple

Obtenez la classe name(s) d'un <div> élément:

<div id="myDIV" class="mystyle anotherClass thirdClass">I am a DIV element</div>

var x = document.getElementById("myDIV").classList;

Le résultat de x sera:

mystyle anotherClass thirdClass
Essayez vous - même »

Exemple

Découvrez combien de noms de classe un <div> élément a:

var x = document.getElementById("myDIV").classList.length;

Le résultat de x sera:

3
Essayez vous - même »

Exemple

Obtenez le premier nom de la classe (index 0) d'un <div> élément:

var x = document.getElementById("myDIV").classList.item(0);

Le résultat de x sera:

mystyle
Essayez vous - même »

Exemple

Pour savoir si un élément a un "mystyle" classe:

var x = document.getElementById("myDIV").classList.contains("mystyle");

Le résultat de x sera:

true
Essayez vous - même »

Exemple

Pour savoir si un élément a un "mystyle" classe. Si oui, supprimez un autre nom de classe:

var x = document.getElementById("myDIV");

if (x.classList.contains("mystyle")) {
    x.classList.remove("anotherClass");
} else {
    alert("Could not find it.");
}
Essayez vous - même »

Exemple

Basculer entre les classes pour créer un bouton de menu déroulant:

// Get the button, and when the user clicks on it, execute myFunction
document.getElementById("myBtn").onclick = function() {myFunction()};

/* myFunction toggles between adding and removing the show class, which is used to hide and show the dropdown content */
function myFunction() {
  document.getElementById("myDropdown").classList.toggle("show");
}

// Close the dropdown if the user clicks outside of it
window.onclick = function(event) {
  if (!event.target.matches('.dropbtn')) {

    var dropdowns = document.getElementsByClassName("dropdown-content");
    var i;
    for (i = 0; i < dropdowns.length; i++) {
      var openDropdown = dropdowns[i];
      if (openDropdown.classList.contains('show')) {
        openDropdown.classList.remove('show');
      }
    }
  }
}
Essayez vous - même »

Exemple fallback: ajouter

Une solution multi-navigateur lors de l'utilisation du classList. add() méthode, pour IE9 et versions antérieures:

var x = document.getElementById("myDIV");

if (x.classList) {
    x.classList.add("mystyle");
} else {
    x.className = "mystyle"; // For IE9 and earlier
}
Essayez vous - même »

Exemple fallback: supprimer

Une solution multi-navigateur lors de l'utilisation du classList. remove() méthode, pour IE9 et plus tôt:

var x = document.getElementById("myDIV");

if (x.classList) {
    x.classList.remove("mystyle");
} else {
    x.className = x.className.replace(/\bmystyle/g, ""); // For IE9 and earlier
}
Essayez vous - même »

Fallback Exemple: contient

Une solution multi-navigateur lors de l'utilisation du classList. contains() méthode, pour IE9 et plus tôt:

var x = document.getElementById("myDIV");

if (x.classList) {
    alert(x.classList.contains("mystyle"));
} else {
    alert(/\bmystyle/g.test(x.className)); // For IE9 and earlier
}
Essayez vous - même »

Exemple fallback: bascule

Une solution multi-navigateur lors de l'utilisation du classList. toggle() méthode, pour IE9:

var x = document.getElementById("myDIV");

if (x.classList) {
    x.classList.toggle("mystyle");
} else {
    // For IE9
    var classes = x.className.split(" ");
    var i = classes.indexOf("mystyle");

    if (i >= 0)
        classes.splice(i, 1);
    else
        classes.push("mystyle");
        x.className = classes.join(" ");
}
Essayez vous - même »

Pages associées

Tutoriel CSS: CSS Selectors

CSS Référence: CSS .class Sélecteur

HTML DOM Référence: HTML DOM className Property

HTML DOM Référence: HTML DOM getElementsByClassName() Méthode

HTML DOM Référence: HTML DOM style objet


<Object Élément