Maison > interface Web > js tutoriel > le corps du texte

Comment détecter et répondre aux changements d'attributs DOM : événements de mutation par rapport à MutationObserver

Susan Sarandon
Libérer: 2024-10-26 03:30:02
original
469 Les gens l'ont consulté

How to Detect and Respond to DOM Attribute Changes: Mutation Events vs. MutationObserver

Déclenchement d'événements de changement d'attribut DOM

Dans le développement Web, la surveillance des modifications apportées aux attributs DOM est cruciale pour les applications Web dynamiques. Les Événements de mutation fournissent un mécanisme pour répondre à ces changements. Cependant, ils sont actuellement obsolètes, remplacés par l'API MutationObserver.

Événements de mutation obsolètes :

Les anciens navigateurs prenaient en charge les événements de mutation, qui permettaient aux développeurs de gérer les modifications du DOM via des types d'événements tels que "DOMSubtreeModified". Cependant, ces événements ne sont plus considérés comme une bonne pratique.

Utilisation de MutationObserver :

Au lieu de cela, l'approche moderne pour détecter les modifications des attributs DOM consiste à utiliser l'API MutationObserver. Cette fonctionnalité native du navigateur permet d'observer les modifications du DOM et de déclencher des rappels lorsque des attributs ou des propriétés spécifiques sont modifiés.

Exemple d'utilisation :

Pour déclencher un événement lorsqu'un IMG src, vous pouvez utiliser le code suivant :

<code class="javascript">const img = document.querySelector('img');
const observer = new MutationObserver((mutations) => {
  mutations.forEach((mutation) => {
    if (mutation.attributeName === 'src') {
      // Custom event handled here
      dispatchEvent(new CustomEvent('imageSrcChanged', { detail: mutation.newValue }));
    }
  });
});
observer.observe(img, { attributes: true });</code>
Copier après la connexion

Vous pouvez également utiliser des bibliothèques comme le plugin Mutation Events pour jQuery pour simplifier l'implémentation des événements de mutation DOM, garantissant la compatibilité avec les anciens navigateurs tout en profitant de l'API MutationObserver pour les navigateurs modernes.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!