Cheatah: Problem: Vererbung in Javascript Klasse (Ajax)

Beitrag lesen

Hi,

Das Ajax-Objekt befindet sich in "this.xmlHttp" und wird in der Funktion update() verwendet. Dort wird mit "this.xmlHttp.onreadystatechange = this.handler;" auf die Funktion handler() verwiesen. Mit Firebug stelle ich fest, dass in der Funktion handler() das Ajax-Objekt sich nun nicht mehr in "this.xmlHttp" sondern direkt unter "this" befindet.

Meine Frage ist einfach: Warum?

Gegenfrage: Warum meinst Du, das eine "this" sei etwas anderes als das andere "this"?

So kann ich nämlich nicht mehr mit "this.name" auf meine oben definierte Variable zugreifen.

Das Stichwort, unter dem Du fündig werden solltest, lautet "bind". Ein anderes wäre "closure".

Cheatah

--
X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes