carissimi ...

ho una domandina per gli esperti. Vi spiego la situazione:

ecco il codice semplificato del mio problema:

codice:
function Foo(id) {
   
   var dom = document.getElementById(id);
   
   function clickHandler() {
      console.log("hello")
   }
   
   this.init = function() {
      dom.addEventListener("click", clickHandler, false);
   }
}
var o1 = new Foo("xxx");
o1.init();

delete(o1); // cancellazione dell'oggetto

var o2 = new Foo("xxx");
o2.init();
quando o1 viene deferenziato il listener sull'oggetto dom wrappato rimane!! infatti come vedete all'onclick esegue 2 log e non uno solo come mi aspettavo. Come si puo' fare a ripulire completamente un oggetto dom da eventi e ecc?

ho provato a usare:

codice:
dom.removeEventListener("click", clickHandler, false);
all'interno di init ma niente! il doppio log rimane