le MEMO du WEB développeur
••• Javascript •••  Liste des Mémos, astuces et bonnes pratiques

Non prise en charge de addEventListener par IE < 9

Internet Explorer pour ses version antérieures à la 9 ne prend pas en charge l'événement javascript addEventListener, qui permet d'assigner un événement javascript à un élément HTML.

On peut remplacer cette fonction sous IE par la fonction attachEvent 

function addEventMultiBrowsers(event, elem, func) {
   if (elem.addEventListener)  // Si le navigateur prend en charge addEventListener
      elem.addEventListener(event,func,false);
   else if (elem.attachEvent) { // Sinon (cas IE < 9)
      elem.attachEvent("on"+event, func);
   }
}

Remarquez que le nom de l'évément passé en paramètre pour addEventListener doit être nommée sous la form click, mouseoverkeydown, keypress ... tandis que pour attachEvent, ses mêmes évenements doivent être nommés onclick, onmouseover, onkeydown, onkeypress .

Dans notre fonction nouvellement créée addEventMultiBrowsers, on choisi le premier formalisme et l'on rajoute "on"+event 

Exemple d'utilisation :

var mon_element = document.getElementById('mon_div');
addEventMultiBrowsers(mon_element, 'mouseover', function() {
    alert ("Vous avez survolé l'élément d'identifiant mon_div !");
});

 

publié le 06/06/2014 par Memo Web
Commenter le Mémo :

Valider un formulaire en javascript
Récupérer l'identifiant de session id_session en javascript
Vérifier la validité d'une URL en Javascript - Expression régulière
Parcourir un tableau en JavaScript
Afficher un message avant de quitter une page
Ajouter un saut de ligne dans une alert javascript
Vérifier si un champs est bien renseigné dans un formulaire HTML
Récupérer la valeur ou le texte sélectionné d'un élément SELECT dans un formulaire
Récupérer l'URL de la page courante
Créer un effet d'opacité sur le survol d'une image
Ajoutez vos propres Mémos sur MEMO-WEB

Il suffit de vous créer un compte sur le site

Vous pourrez choisir un thème parmis l'une des catégories proposées par MEMO-WEB.

Rédigez votre Mémo.
Après validation par MEMO-WEB, il sera mis en ligne.
Ajouter vos Mémos