coderef

Online statusBaseline · Widely available

The navigator.onLine property is a boolean for whether the browser is connected to some network (though not necessarily the internet). The online and offline events fire when the connection state changes.

Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Jul 29, 2015. Widely available since Jan 29, 2018.

Browser support

DesktopChrome
1–1Not supported
2+Supportedsince May 21, 2009
Current: 155
Edge
12+Supportedsince Jul 29, 2015
Current: 154
Firefox
1–1Not supported
1.5+Supportedsince Nov 29, 2005
Current: 157
Safari
1–3.1Not supported
4+Supportedsince Jun 8, 2009
Current: 27
MobileChrome Android
18+Supportedsince Jun 27, 2012
Current: 155
Firefox Android
4+Supportedsince Mar 29, 2011
Current: 157
Safari iOS
1–3Not supported
3.2+Supportedsince Apr 3, 2010
Current: 27

How to use

This feature is Baseline widely available — use it freely, no fallback needed.

Example

Full syntax and examples are on MDN: onLine.

Feature detection

JS · check before using
if ("Navigator" in globalThis && "onLine" in Navigator.prototype) {
  // Navigator.onLine is available
}

Sub-features

Support for each part of the feature (6). The overall table above shows when the whole feature works.

Sub-featureChromeEdgeFirefoxSafariChrome AndroidFirefox AndroidSafari iOS
Navigator.onLine2121.541843.2
Window.offline_event312941893
Window.online_event312941893
WorkerGlobalScope.offline_event✕✕298✕298
WorkerGlobalScope.online_event✕✕298✕298
WorkerNavigator.onLine4123.541845