JavaScript/Navigator/onLine

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Die Eigenschaft onLine (kein Schreibfehler!) des Navigator-Objekts gibt an, ob der Computer eine Verbindung zu einem Netzwerk hat[1]. Sie ist Teil der WHATWG Web Application Spezifikation[2].

Syntax

let istOnline = window.navigator.onLine;;

  • istOnline: boolescher Wert

Verwendung

Dass onLine auf true steht, besagt lediglich, dass der Computer in irgendeiner Form vernetzt ist. Dass dieses Netzwerk mit dem Internet verbunden ist, folgt daraus noch nicht. Dies können Sie nur prüfen, indem Sie versuchen, eine Verbindung zu einem bekannten Server herzustellen.

Wenn andererseits onLine auf false steht, können Sie sicher sein, dass alle Netzwerkoperationen scheitern werden. Entweder ist der Computer nicht vernetzt, oder der Benutzer hat die „offline“-Funktion des Geräts verwendet.

Anwendungsbeispiel

Beispiel
if ('boolean' != typeof navigator.onLine) {
  alert('Der Computers ist zu alt...');
}
else {
  alert('Der Computer hat ' + (navigator.onLine ? '' : 'keinen ') + 'Netzwerkzugriff.');
}

Das Beispiel ermittelt zunächst, ob die onLine-Eigenschaft des Navigator-Objekts vorhanden ist. Alt-Browser, die diese Eigenschaft nicht kennen, liefern undefined an Stelle eines booleschen Wertes. Wenn die Existenz gesichert ist, wird der ternäre Operator ?: verwendet, um eine geeignete Meldung zu erstellen (hat Zugriff / hat keinen Zugriff).

Quellen

  1. MDN: NavigatorOnLine.onLine
  2. WHATWG: navigator.online