Est-il possible d'écouter tous les événements javascript ?
J'essaie de deviner s'il y a un événement déclenché après la modification du DOM par une requête AJAX.
Est-il possible d'écouter tous les événements javascript ?
J'essaie de deviner s'il y a un événement déclenché après la modification du DOM par une requête AJAX.
Avec firebug ou Inspecteur du Web vous pouvez utiliser monitorEvents
:
monitorEvents(myDomElem);
Ceci imprime tous les événements émis par myDomElem
à la console. Utilisez unmonitorEvents
pour arrêter de surveiller les événements.
Si vous êtes intéressé par l'obtention d'événements après que le DOM ait été manipulé, jetez un coup d'oeil à Événements de mutation .
Modifier :
Pour autant que je sache, il n'existe pas de moyen facile d'intercepter tous les onreadystatechange
de tous les XMLHttpRequest. La seule solution à laquelle je pense est de remplacer l'objet XMLHttpRequest natif par votre propre implémentation. Par exemple :
(function() { // Overriding XMLHttpRequest
var oldXHR = window.XMLHttpRequest;
function newXHR() {
var realXHR = new oldXHR();
realXHR.addEventListener("readystatechange", function() {
console.log("an ajax request was made")
}, false);
return realXHR;
}
window.XMLHttpRequest = newXHR;
})();
Inutile de dire que c'est extrêmement compliqué et généralement peu judicieux.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.