Что-то я не понял...
Вроде как пишут, что attachEvent не передает this в функцию-обработчик. Собственно для этого и написал
var IEhandler = function(){handler.call(element);}
И поэтому и не срабатывал detachEvent потом.
Но когда сделал так, все заработало
var EventHandler = {
add: function(element, eventType, handler){
if(element.addEventListener){
element.addEventListener(eventType, handler, false);
return handler;
}
element.attachEvent("on"+eventType, handler);
return handler;
},
remove: function(element, eventType, handler){
if(element.addEventListener){
element.removeEventListener(eventType, handler, false); return;
}
element.detachEvent("on"+eventType, handler);
}
}
Причем this присутствует в функции-обработчике. Где косяк? Работает во всех IE от 6