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, mouseover, keydown, 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 !"); });
Laisser un commentaire
Participez-vous à la discussion?N'hésitez pas à contribuer!