Hannes Lau: Eventhandler dynamisch hinzufügen

Beitrag lesen

Hallo!

Unter

http://forum.de.selfhtml.org/archiv/2005/6/t108735/#m677848

hatte ich die Frage gestellt, wie ich von einem Objekt aus einer DOM-Node einen Eventhandler verpassen kann, der eine Methode auf dem Objekt aufruft. Die Antworten und ein Artikel über closures haben mich zu folgender Lösung gebracht.

function List(node) {
  this.node = node;
  var self = this;
  this.node.onchange = function() {self.changed()};
}

List.prototype.changed = function() {
  // Refresh somewhat specific to this object
}

var self=this mag ziemlich albern aussehen, mit this innerhalb der Ad-Hoc Funktion funktioniert es aber leider nicht. Erinnert ein bisschen an halberfüllte Funktionen aus dem Funktionalen :D

Vielen Dank für eure Hilfe

Einen netten Gruß
Hannes