Mit new function() erzeuge ich ein Objekt einer Funktion. Es wird beim Erzeugen "aufgerufen". Direkt aufrufen kann ich es aber nicht, soweit richtig? Insofern muss ich dies komplett verwerfen. Also zurück zu meinem ursprüunglichen Problem.
Du musst dir das OO Konzept von JS mal anschauen:
function Obj() {... }
new Obj();
Du hast also eine Funktion, die quasi der Konstruktor ist und mit
new function() { .... }
ist es einfach eine anonyme Funktion. Das ist aber nicht unbedingt sinnvoll, da du so nur ein Objekt erzeugen kannst.
Innerhalb einer mit function erzeugten Methode A der Klasse erzeuge ich mit function eine andere Methode B der Klasse. Methode A ist in einer privilegierten Membervariable untergebracht, Methode B in einem privaten Array (quasi "von Funktionen").
Innerhalb der Methode A kann ich auf alle Member der Klasse zugreifen. Innerhalb von Methode B geht dies nicht mehr. Irgendwie geht der Kontext verloren.
genau, und um den behalten zu können musst du in dem Fall auf einen Trick zurückgreifen:
var self = this;
....
danach kannst du in deinen privaten Methoden über self auf das aktuelle Objekt zugreifen.
Zu eurem bisherigen Vorschlag dazu:
Mit var self = this innerhalb von Handler[Count] zu arbeiten kann ich nicht nachvollziehen. ....
nicht innerhalb von Handler[] sondern innerhalb von addRequest() oder im Konstruktor.
...Ich habe es versucht, ohne Erfolg. Habe ich das denn richtig verstanden: Diese Deklaration muss ja zwangsläufig außerhalb von Handler[ Count ] geschehen. Da ich von innen dann aber keinen Zugriff auf die Membervariable self habe, ist es Witzllos.
Wieso nicht, self ist quasi eine private Variabel und du kannst innerhalb der privaten Funktion auf self zugreifen.
Ich hab mir deinen Code nochmal angeschaut, da sind noch mehr Sachen, die so nicht funktionieren. Die Funktion document.createEvent(); war mir bisher unbekannt, mir ist aber nicht ganz klar warum du sie brauchst. Auch das was du bei addEventListener einträgst ist kein gültiger Event, soweit ich das sehe, der irgendwann gefeuert wird.
Struppi.
Javascript ist toll (Perl auch!)