The Making Of -> "Wandern mit GPS"

Firefox Javascript Timeout

Javascriptfehlermeldung in Firefox

Beim Abarbeiten längerdauernder Javascript Applikationen kann im Firefox Browser folgendes Meldungfenster aufpoppen:

Warnung: Nicht antwortendes Skript. Ein Skript auf dieser Seite ist eventuell beschäftigt oder es antwortet nicht mehr. Sie können das Skript jetzt stoppen oder fortsetzen, um zu sehen, ob das Skript fertig wird.

Fehlermeldung im Firefox Browser

Ursache

Die Darstellung von Routen, Tracks und Waypoints in Google-Maps erfolgt per Javascript und die Google-Maps-API. Speziell bei der Darstellung von Tracks, wo sehr viele Punkte verarbeitet werden müssen, entstehen oft recht hohe Laufzeiten der Javascript-Funktionen.

Der Firefox Browser hat eine Überwachungsfunktion eingebaut, um festzustellen, ob sich ein Skript möglicherweise aufgehangen hat. Firefox erwartet, dass ein Skript nach einer bestimmten Zeit fertig ist - in der Voreinstellung des Browsers sind das 5 Sekunden. Bei längerlaufenden Skripts wird der besagte Warnhinweis eingeblendet.

Und genau das kann bei der Darstellung von Tracks in Google-Maps passieren, bedingt durch den Dialog mit dem Google-Maps Server braucht das Skript möglicherweise länger als 5 Sekunden.

Workaround

Die kurzfristige Maßhahme an dieser Stelle ist der Klick auf "Fortsetzen". Dann arbeitet das Skript weitere 5 Sekunden. Möglicherweise muss bei großen Verarbeitungen auch mehrmals "Fortsetzen" gedrückt werden.

Abhilfe

Um das Problem dauerhaft zu umgehen lässt dich der Firefox Browser aber auch so einstellen, dass er länger als 5 Sekunden auf ein Skript wartet.

Firefox: about:config

Firefox: about:config

Dazu ist die Anpassung eines Parameters in der Firefox Konfiguration nötig. Die Firefox Konfiguration erreicht man nicht über das Menü sondern durch die Eingabe von "about:config" in die Adresszeile und die Enter-Taste.

Firefox: dom.max_script_run_time

Firefox: dom.max_script_run_time

Nun werden alle Konfigurationparameter des Firefox Browsers anzezeigt. Von Interesse für unseren Zweck ist die Zeile:"dom.max_script_run_time".

Eingabe einer höheren Sekundenzahl

Eingabe einer höheren Sekundenzahl

Doppelklick auf die Zeile öffnet ein Eigabefenster, in dem sich die Vorgabe von 5 ändern lässt. Hier bitte nun den gewünschten neuen Timeoutwert in Sekunden eingeben, zum Beispiel 15 und OK klicken. Der neue Wert ist jetzt übernommen. Damit er auch wirksam wird, muss der Browser beendet und neu gestartet werden.

Wichtig: Fehlerhinweis und Workaround betreffen nur den Firefox Browser und nicht etwa den Microsoft Internet Explorer.


Markenzeichen: Firefox ist markenrechtliches Eigentum der Mozilla Foundation, Internet Explorer eine Marke der Microsoft Corp. USA, Google-Maps und Google-Maps-API sind Marken der Google Inc. USA.

Letzte Änderung: 05.06.2006