web-dev-qa-db-fra.com

Y a-t-il un événement "on DOM change"?

Duplicata possible:
Détecter les changements dans le DOM

J'ai besoin de configurer un gestionnaire d'événements, qui devrait se déclencher chaque fois que quelque chose est ajouté/modifié/supprimé sur le DOM. Cette réponse ne fonctionne pas dans mon cas. Le DOM peut être modifié par des développeurs tiers, et à chaque changement de DOM, nous devons exécuter notre script pour valider le code. L'événement ne doit pas se déclencher sur l'entrée/la zone de texte/sélectionner le changement.

Nous ne ciblons pas tous les navigateurs. Tant qu'il fonctionne sur Webkit (Chrome, Safari), c'est assez bon.

Des idées?

32
Sherzod

Événements de mutation DOM (je ne crois pas pris en charge dans tous les navigateurs) .. voir http://en.wikipedia.org/wiki/DOM_events#Common.2FW3C_events

9
Jim Blackler

Je ne pense pas qu'il existe un tel événement dans tous les navigateurs. J'irais avec un événement personnalisé et le déclencherais chaque fois que je manipulerais le dom.

//Subscribe to domChanged event
$(document).bind('domChanged', function(){
     alert('Dom changed');
});

//Trigger the domChanged event
$(document).trigger('domChanged');
2
ShankarSangoli