Information Technology Reference
In-Depth Information
Hintergrund aktualisieren. Das System kann so mit und ohne Netzwerkzugriff
zuverlässig HTML-Seiten anzeigen.
Die Spezifikation schreibt ein weiteres Attribut vor, das darüber Auskunft gibt,
ob der Browser online oder offline ist.
window.navigator.onLine
sollte dann
false
als Rückgabewert haben, wenn der Browser so eingestellt ist, dass er
nicht auf das Netzwerk zugreift, oder sicher weiß, dass der Netzwerk-Zugriff
fehlschlagen wird. In allen anderen Fällen enthält die Variable
true
.
HINWEIS
Auch wenn
window.navigator.onLine
true
enthält, bedeutet das nicht automa-
tisch, dass der Browser Zugriff auf das Internet hat. Auch in privaten Netzwer-
ken ist der Browser
online
, es besteht aber nicht zwangsläufig eine Verbindung
zum öffentlichen Internet.
Moderne Browser haben eine Funktion, um in den Offline-Modus zu wechseln.
In Mozilla Firefox findet man diese Funktion zum Beispiel im
D
ATEI
-Menü als
O
FFLINE
ARBEITEN
. Wenn der Browser vom Online- in den Offline-Modus wechselt,
wird das Event
offline
erzeugt; im umgekehrten Fall heißt das Event entspre-
chend
online
.
window.addEventListener("online", function() {
alert("You are now online");
}, false);
window.addEventListener("offline", function() {
alert("You are now OFFLINE");
}, false);
Das kurze Beispiel erzeugt ein
alert
-Fenster, sobald der Browser seinen
Online-Zustand verändert. Offline-fähige Applikationen können diese Events
verwenden, um aktualisierte Daten vom Server zu laden beziehungsweise um
lokal gespeicherte Daten auf den Server zu kopieren.
8.3.3 Debugging
Wer hat das Problem nicht schon einmal kennengelernt: Man verändert Zeile
um Zeile im Quellcode, aber obwohl die Seite im Browser jedes Mal neu gela-
den wird, ändert sich das Ergebnis nicht. Auf dem Weg zwischen Server und
Browser gibt es mehrere Stellen, an denen Webinhalte zwischengespeichert
werden können. Was in den meisten Fällen eine erwünschte Verbesserung ist
und Bandbreite zu sparen hilft, sorgt beim Entwickeln für so manches graue
Haar.