Maison > interface Web > js tutoriel > Comment puis-je modifier efficacement les classes d'éléments à l'aide de JavaScript ?

Comment puis-je modifier efficacement les classes d'éléments à l'aide de JavaScript ?

DDD
Libérer: 2024-12-28 08:39:10
original
618 Les gens l'ont consulté

How Can I Efficiently Change Element Classes Using JavaScript?

Comment modifier les classes d'éléments à l'aide d'événements JavaScript

Techniques HTML5 modernes

Les navigateurs modernes prennent en charge la propriété classList, qui fournit des méthodes pour manipuler les classes :

document.getElementById("MyElement").classList.add('MyClass');
document.getElementById("MyElement").classList.remove('MyClass');
if (document.getElementById("MyElement").classList.contains('MyClass'))
  document.getElementById("MyElement").classList.toggle('MyClass');
Copier après la connexion

Solution simple multi-navigateurs

Changement Toutes les classes :

Utilisez className pour définir toutes les classes :

document.getElementById("MyElement").className = "MyClass";
Copier après la connexion

Ajout d'une classe supplémentaire :

Ajoutez un espace et la nouvelle classe :

document.getElementById("MyElement").className += " MyClass";
Copier après la connexion

Supprimer une classe :

Utiliser une expression régulière remplacer :

document.getElementById("MyElement").className =
  document.getElementById("MyElement").className.replace(/(?:^|\s)MyClass(?!\S)/g, '');
Copier après la connexion

Vérification d'une classe :

Utilisez la même expression régulière pour vérifier :

if (document.getElementById("MyElement").className.match(/(?:^|\s)MyClass(?!\S)/))
Copier après la connexion

Attribuer des actions aux événements onClick

Éviter en utilisant JavaScript en ligne dans les attributs HTML. Au lieu de cela, créez une fonction et appelez-la dans l'attribut onClick :

<script>
  function changeClass() {
    // Action code
  }
</script>
<button onClick="changeClass()">My Button</button>
Copier après la connexion

Ou avec addEventListener :

<script>
  window.onload = function() {
    document.getElementById("MyElement").addEventListener('click', changeClass);
  }
</script>
<button>
Copier après la connexion

Frameworks et bibliothèques JavaScript

Exemples jQuery

$('#MyElement').addClass('MyClass');
$('#MyElement').removeClass('MyClass');
if ($('#MyElement').hasClass('MyClass'))
Copier après la connexion

Basculer un class :

$('#MyElement').toggleClass('MyClass');
Copier après la connexion

Attribuer un événement de clic :

$('#MyElement').click(changeClass);
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal