Cet exemple illustre ce qui suit :

","image":"http://www.luping.net/uploads/20241216/1734319450675f9d5a75a0f.jpg1734319450675f9d5a75a1a.jpg","datePublished":"2024-12-16T11:40:18+08:00","dateModified":"2024-12-16T11:40:18+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je détecter et répondre efficacement aux modifications du DOM en JavaScript ?

Comment puis-je détecter et répondre efficacement aux modifications du DOM en JavaScript ?

Publié le 2024-12-16
Parcourir:412

How Can I Effectively Detect and Respond to DOM Changes in JavaScript?

Détecter efficacement les modifications du DOM

L'observation des modifications dans le DOM est cruciale pour créer des applications Web dynamiques qui répondent aux interactions des utilisateurs. Une approche largement utilisée consiste à exploiter MutationObserver, une API moderne qui vous permet de surveiller les modifications du DOM. Cette approche est prise en charge par la plupart des navigateurs modernes, notamment IE11 , Firefox et WebKit.

Pour implémenter cela, vous pouvez utiliser les étapes suivantes :

var observeDOM = (function() {
  var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;

  return function(obj, callback) {
    if (!obj || obj.nodeType !== 1) {
      return;
    }

    if (MutationObserver) {
      var mutationObserver = new MutationObserver(callback);
      mutationObserver.observe(obj, {childList: true, subtree: true});
      return mutationObserver;
    } else if (window.addEventListener) { // browser support fallback
      obj.addEventListener('DOMNodeInserted', callback, false);
      obj.addEventListener('DOMNodeRemoved', callback, false);
    }
  }
})();

Cette fonction prend un élément (obj) et une fonction de rappel (callback) comme arguments. Le rappel sera exécuté chaque fois qu'une modification est apportée à l'élément ou à ses enfants.

Pour démontrer l'utilisation, considérons cet exemple :

Cet exemple illustre ce qui suit :

  • Ajout d'un élément à la liste
  • Suppression d'un élément de la liste
  • Utilisation MutationObserver pour détecter les changements dans la liste. Cela peut être utilisé pour effectuer diverses actions, telles que la modification de l'interface utilisateur ou la mise à jour des données backend.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3