Mi sa che l'unica cosa da fare è adottare una soluzione del genere...
codice:
$addListener = function(obj, ev, lis) {

	//Fix per lo scope di IE
	lisnew = window.attachEvent 
             ? function() { lis.call(obj); } 
             : lis;

       //Aggiunge il listener
        if(obj.addEventListener) //W3C
		obj.addEventListener(ev, lisnew, 0); 
	else if(obj.attachEvent) //IE
		obj.attachEvent("on"+ev, lisnew); 
	
}