molily: Globale variable?

Beitrag lesen

Wie aber rufe ich dann dies aus der ursprünglichen HTML Seite mit onload= ?

Ups, das habe ich vergessen.

Von außen kannst du über StatusUpdater.url, StatusUpdater.getStatus() usw. auf Eigenschaften und Methoden des Objekts zugreifen.

<body onload="[code lang=javascript]StatusUpdater.getStatus()">[/code]

oder besser in JavaScript (wieder mit bind, damit this in getStatus auf StatusUpdater zeigt):

window.onload = StatusUpdater.getStatus.bind(StatusUpdater);

oder besser mit einer addEvent-Helferfunktion, damit man irgendwann mehrere Event-Handler registrieren kann:

addEvent(window, 'load', StatusUpdater.getStatus.bind(StatusUpdater));

Anstelle dieses ständigen wiederholten Bindings kann man Funktionen einmal binden und dann StatusUpdater.getStatus mit der gebundenen Funktion überschreiben, z.B.

StatusUpdater.getStatus = StatusUpdater.getStatus.bind(StatusUpdater);

Damit ist garantiert, dass this darin immer auf StatusUpdater zeigt, auch wenn ich die Funktion als Event-Handler verwende oder setTimeout übergebe.

Mathias