molily: Event für Änderung einer Select-Liste

Beitrag lesen

// setzt "this" innerhalb der Funktion auf das aktuelle HTML-Element:
        onappend.apply = function (allMyElements[i]);

Das ist Phantasiecode. ;) Was du meinst, ginge eher so (mit zwei Closures pro Schleifendurchlauf):

for (i = 0; i < allMyElements.length; i++) {
  (function () {
    var element = allMyElements[i];
    element.onappend = function () {
      onappend.apply(element, arguments);
    };
  })();
}

apply ist eine Methode des Funktionsobjekt onappend und erwartet das gewünschte this-Objekt als Parameter sowie einen optionalen Parameter-Array.

Man kann einfach myElement.onappend=function(){...} notieren, sodass dann innerhalb der Funktion this eben auf window verweist... ganz wie Du das brauchst.

Ich sehe hier kene Notwendigkeit, den this-Kontext mit apply zu korrigieren.

Man kann einfach
  allMyElements[i].onappend = onappend;
notieren und wenn man dann
  mySelect.onappend()
aufruft, zeigt this wie gewünscht auf mySelect.

Mathias