Ajout ou supprimer une classe d'un élément de JavaScript
Jul 09, 2025 am 02:14 AML'API ClassList est la plus recommandée pour faire fonctionner les noms de classe des éléments dans JavaScript. 1. Utilisez Ajouter, supprimer, basculer et contenir des méthodes pour ajouter, supprimer, changer et vérifier les classes clairement et efficacement; 2. Pour les anciens navigateurs, vous pouvez retomber à l'attribut Classname pour épisser manuellement les cha?nes, mais elle est sujette aux erreurs; 3. Déterminez si la classe existe puis fonctionne, elle peut améliorer la sécurité logique, mais dans la plupart des cas, la baisse est suffisamment concise. La ma?trise des scénarios d'application et le traitement de compatibilité de ClassList est la clé.
Dans JavaScript, l'ajout ou la suppression d'une classe à un élément est une opération DOM commune. Cette opération est généralement utilisée pour changer de styles, déclencher des animations ou modifier les états des composants. Ce n'est pas difficile à mettre en ?uvre, mais il existe plusieurs points clés auxquels faire attention, en particulier la compatibilité et la simplicité du code.

L'utilisation de l'API ClassList est le moyen le plus recommandé
Les navigateurs modernes prennent généralement en charge classList
, qui fournit un ensemble de méthodes simples pour manipuler les noms de classe. Les méthodes courantes comprennent:
-
element.classList.add('class')
: ajouter une classe -
element.classList.remove('class')
: supprimer une classe -
element.classList.toggle('class')
: Switch Class (Supprimer s'il y en a, ajouter s'il y a non) -
element.classList.contains('class')
: Vérifiez si une classe est incluse
Par exemple, si vous voulez qu'un bouton soit mis en surbrillance après avoir cliqué, vous pouvez l'écrire comme ceci:

const btn = document.QuerySelector ('. My-Button'); btn.addeventListener ('click', () => { btn.classlist.add ('highlight'); });
Si vous souhaitez vous détendre lorsque vous cliquez à nouveau, utilisez simplement toggle
:
btn.addeventListener ('click', () => { btn.classlist.toggle ('highlight'); });
L'avantage de cette méthode est que le code est clair, la sémantique est claire et les performances sont relativement bonnes.

Problèmes de compatibilité? Une alternative de classe peut être considérée
Si vous devez prendre en charge les anciens navigateurs (comme IE9 et ci-dessous), vous ne pourrez peut-être pas utiliser classList
. Pour le moment, vous pouvez épisser manuellement les cha?nes avec className
pour ajouter ou supprimer des classes.
Par exemple, ajoutez une classe:
if (! element.classname.cludscluses ('new-classe')) { element.classname = 'new-classe'; }
Supprimer une classe:
element.classname = element.classname.replace (/ \ bold-class \ b / g, '');
Bien que les fonctions puissent être implémentées, cette méthode est sujette à des erreurs, telles que une mauvaise gestion des espaces entre plusieurs noms de classe ou des ajouts répétés. Par conséquent, si vous n'avez pas besoin d'être compatible avec les anciens navigateurs, il est recommandé d'utiliser d'abord classList
.
Déterminez si la classe existe, puis le fonctionne plus en sécurité
Parfois, vous voudrez peut-être décider quelle logique exécuter en fonction de la question de savoir s'il y a actuellement une certaine classe. Pour le moment, vous pouvez utiliser classList.contains()
pour juger.
Par exemple, vérifiez s'il existe une existence avant de changer la classe:
const el = document.getElementById ('box'); if (el.classList.Contains ('actif')) { el.classlist.remove ('actif'); } autre { el.classlist.add ('actif'); }
Bien s?r, il est plus concis d'utiliser toggle
directement dans ce scénario. Mais dans une logique complexe, il sera plus s?r et plus contr?lable de juger d'abord, puis de fonctionner.
Fondamentalement, c'est tout. La ma?trise des quelques méthodes de classList
peut répondre à la plupart des besoins. Parfois, lorsque vous rencontrez des problèmes de compatibilité, envisagez de retomber à className
pour le traitement. La clé est de comprendre les utilisations et les scénarios applicables de différentes méthodes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Utilisez les fonctions JavaScript pour manipuler les éléments DOM et modifier les styles JavaScript est un langage de programmation puissant qui peut être utilisé pour manipuler les éléments DOM (Document Object Model) et modifier les styles dans les pages HTML. Dans cet article, nous apprendrons comment utiliser les fonctions JavaScript pour effectuer ces taches et fournirons quelques exemples de code concrets. Obtention d'éléments DOM Pour exploiter un élément DOM, vous devez d'abord le trouver. Nous pouvons passer l'élément en utilisant la fonction getElementById

Optimisation des performances des sites Web PHP : Comment réduire les opérations DOM pour améliorer la vitesse d'accès ? Dans les sites Web modernes, le contenu généré dynamiquement est généralement implémenté via la manipulation DOM. Cependant, des opérations DOM fréquentes peuvent ralentir le chargement des pages et augmenter la charge sur le serveur. Afin d'optimiser les performances du site Web, nous devons réduire le nombre d'opérations DOM pour augmenter la vitesse d'accès. Cet article présentera quelques techniques pour réduire les opérations DOM et fournira des exemples de code correspondants. Utilisation des variables de cache Lorsque vous devez utiliser l'objet DOM généré plusieurs fois, vous pouvez utiliser des variables de cache

Vue est un framework JavaScript très populaire qui peut être utilisé pour créer des applications monopage (SPA) hautes performances et évolutives. L'une des fonctionnalités puissantes réside dans les directives personnalisées, qui sont une extension basée sur les directives principales de Vue (v-model, v-if, v-for, etc.), qui peuvent être utilisées pour ajouter des comportements aux éléments DOM. Dans cet article, nous apprendrons comment utiliser des directives personnalisées dans Vue pour implémenter des opérations DOM. Pour créer une directive personnalisée, vous pouvez utiliser la fonction de directive de Vue pour

Les principales raisons du fonctionnement lent de DOM sont le co?t élevé du réarrangement et de la redémarrage et de l'efficacité à faible accès. Les méthodes d'optimisation incluent: 1. Réduire le nombre d'accès et les valeurs de lecture du cache; 2. Opérations de lecture et d'écriture par lots; 3. Fusionner et modifier, utiliser des fragments de document ou des éléments cachés; 4. évitez la gigue de mise en page et manipulez-le de manière centralisée à lire et à écrire; 5. Utilisez le cadre ou la mise à jour Asynchrones de demande.

Le classListAPI est le plus recommandé pour faire fonctionner les noms de classe des éléments dans JavaScript. 1. Utilisez Ajouter, supprimer, basculer et contenir des méthodes pour ajouter, supprimer, changer et vérifier les classes clairement et efficacement; 2. Pour les anciens navigateurs, vous pouvez retomber à l'attribut Classname pour épisser manuellement les cha?nes, mais elle est sujette aux erreurs; 3. Déterminez si la classe existe puis fonctionne, elle peut améliorer la sécurité logique, mais dans la plupart des cas, la baisse est suffisamment concise. La ma?trise des scénarios d'application et le traitement de compatibilité de ClassList est la clé.

Lors de l'exploitation du DOM, vous devez réduire le nombre d'accès, utiliser des API modernes, éviter les fuites de mémoire et combiner la limitation asynchrone et l'anti-Table. 1. évitez le fonctionnement fréquent de DOM dans les boucles. Il est recommandé de construire d'abord les cha?nes ou d'utiliser le document de document au traitement par lots; 2. Utilisez QueySelector et QuerySelectorall pour améliorer la lisibilité et la flexibilité du code; 3. Nettoyez l'auditeur de l'événement avant de retirer les éléments pour éviter les fuites de mémoire; 4. Utilisez la demandes de demande de chame ou de débouchement / grottle pour les événements à haute fréquence pour contr?ler la fréquence d'exécution.

QueySelector renvoie un élément unique statique ou NodeList, GetElementsByClassName renvoie un HTMLCollection dynamique; 2. QueySelector prend en charge les sélecteurs CSS complexes, ce dernier ne prend en charge que les noms de classe; 3. QuerySelectorall doit être utilisé lors de l'obtention de plusieurs éléments; 4. La différence de performance est extrêmement petite, le développement moderne recommande d'utiliser d'abord le questionnaire et le queySelectoral, car il est plus flexible et a une lisibilité au code plus forte, et GetElementsByClassname est utilisé à moins que la collection en temps réel ne soit requise.

Pour améliorer les performances de l'opération DOM des applications H5, le noyau est de réduire le nombre d'accès et d'opérations et d'optimiser le temps de mise à jour. 1. Minimiser l'accès et la modification DOM, et les opérations de lecture et d'écriture du processus par lots; 2. Utilisez le document de document pour effectuer une insertion multi-éléments pour éviter les réorganisations multiples; 3. évitez de modifier directement les styles en ligne et passez aux classes CSS; 4. Priorisez l'utilisation de sélecteurs efficaces tels que QuerySelector et cachez les résultats; 5. Gardez la structure DOM plate pour réduire le temps de traversée; 6. Utilisez la demandes de demande de chaque pour optimiser les mises à jour visuelles; 7. Utilisez un anti-titulaire ou une limitation pour les événements à haute fréquence pour contr?ler la fréquence de déclenchement; 8. Laisser des taches non-dom au travail Web pour le traitement pour libérer le fil principal
