Sunday, February 12, 2012

Removing the dreaded annonymous function event listener


I have a function I’m using to add my listeners to a page but I need a way to globally clear them. No matter how I try, I can’t give the functions a reference to later be emptied completely so they could be re-added later.




proto.handlerFunc = {};

proto.addListener = function (evt, handler) {
var self = this;
this.handlerFunc = function () {
handler.apply(self);
}
this.someObj.addEventListener(evt, this.handlerFunc, false);
}
proto.removeListener = function (evt) {
var self = this;
this.myVideo.removeEventListener(evt, this.handlerFunc, false);
this.handlerFunc = null;
}

No comments:

Post a Comment