Die wichtigsten Browser-Anbieter unterscheiden sich darin, was "offline" bedeutet.
Chrome und Safari erkennen automatisch, wenn Sie "offline" gehen. Dies bedeutet, dass "online" -Ereignisse und -Eigenschaften automatisch ausgelöst werden, wenn Sie Ihr Netzwerkkabel abziehen.
Firefox (Mozilla), Opera und IE verfolgen einen anderen Ansatz und betrachten Sie als "online", es sei denn, Sie wählen im Browser explizit "Offline-Modus" - auch wenn Sie keine funktionierende Netzwerkverbindung haben.
Es gibt gültige Argumente für das Firefox / Mozilla-Verhalten, die in den Kommentaren dieses Fehlerberichts beschrieben werden:
https://bugzilla.mozilla.org/show_bug.cgi?id=654579
Um die Frage zu beantworten: Sie können sich nicht auf die Online- / Offline-Ereignisse / -Eigenschaft verlassen, um festzustellen, ob tatsächlich eine Netzwerkverbindung besteht.
Stattdessen müssen Sie alternative Ansätze verwenden.
Der Abschnitt "Notizen" dieses Mozilla Developer-Artikels enthält Links zu zwei alternativen Methoden:
https://developer.mozilla.org/en/Online_and_offline_events
"Wenn die API nicht im Browser implementiert ist, können Sie mithilfe anderer Signale erkennen, ob Sie offline sind, einschließlich des Abhörens auf AppCache-Fehlerereignisse und Antworten von XMLHttpRequest."
Dies verweist auf ein Beispiel für den Ansatz "Auf AppCache-Fehlerereignisse warten":
http://www.html5rocks.com/de/mobile/workingoffthegrid/#toc-appcache
... und ein Beispiel für den Ansatz "Auf XMLHttpRequest-Fehler warten":
http://www.html5rocks.com/de/mobile/workingoffthegrid/#toc-xml-http-request
HTH, - Tschad