Voici une manière d'ajouter la fonction addEventListener sur Internet Explorer (testé sur la version 7) sans modifier Object.prototype .
addEventListener est une fonction décrite dans le DOM Level 2 et qui n'est pas encore prise en charge par IE.
La technique est d'overrider les fonctions getElementById, getElementByName, getElementsByTagName.
On stock l'ancienne méthode dans une variable (ex. : oldGetElementById)
et on appelle l'ancienne méthode à l'interieur du corps de la nouvelle, on modifie le ou les objets récupéré(s) , en ajoutant addEventListener et on retourne ces même objets.
- l'utilisateur (le coder) n'y a vu que du feu :)
- on ne modifie pas Object.prototype.
- on ne reecrit pas "vraiment" les fonctions puisqu'on les appelle de toute façons :)