ブラウザの接続状態を返します。このプロパティは真偽値を返して true はオンライン、false はオフラインを表します。ブラウザのネットワーク接続状態が変化するたびに、プロパティを更新します。この更新はユーザがリンクをたどる、あるいはスクリプトがリモートページを要求するときに発生します。例えばインターネットへの接続が失われた後にユーザがリンクをクリックすると、このプロパティは false を返します。

このプロパティの実装は、ブラウザにより異なります。

Chrome および Safari は、ブラウザがローカルエリアネットワーク (LAN) またはルータに接続できないときにオフライン、それ以外の状況では true を返します。従って、false 値が返る場合はブラウザがオフラインであると考えることができますが、true 値は必ずインターネットにアクセスできると考えることはできません。仮想イーサネットアダプタを持つ仮想化ソフトウェアを実行しているコンピュータでは常に "接続中" になるなど、偽陽性になる可能性があります。よって、実際のブラウザのオンライン状態を検出したい場合は、付加的なチェック方法を開発するべきでしょう。詳しくは HTML5 Rocks の記事 Working Off the Grid をご覧ください。

Firefox および Internet Explorer は、ブラウザをオフラインモードに切り替えると false 値を送信します。Firefox 41 まで、他の状態では true 値を返していました。Firefox 41 より OS X および Windows で、実際のネットワーク接続状態に従って値を返します。

window.ononline および window.onoffline イベントをリッスンすることにより、ネットワーク接続状態の変化を確認できます。

構文

online = window.navigator.onLine;

online には truefalse の真偽値が返されます。

live example をご覧ください。

オンラインであるかを確認するには、以下のサンプルのように window.navigator.onLine を確認します:

if (navigator.onLine) {
  console.log('online');
} else {
  console.log('offline');
}

ブラウザが navigator.onLine をサポートしない場合は、上記のサンプルでは常に false/undefined が返ります。

ネットワーク接続状態の変化を確認するには、以下のように window.online および window.offline をリッスンするため addEventListener を使用します:

window.addEventListener("offline", function(e) { console.log("offline"); });

window.addEventListener("online", function(e) { console.log("online"); });

仕様

仕様書 策定状況 コメント
HTML Living Standard
navigator.onLine の定義
現行の標準 最初期の定義

ブラウザ実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
基本対応Chrome 完全対応 あり
補足
完全対応 あり
補足
補足 Earlier versions of Chrome incorrectly return true when a tab is first opened, but it starts reporting the correct connectivity status after the first network event. Windows: 11, Mac: 14, Chrome OS: 13, Linux: Always returns true. For history, see crbug.com/7469.
Edge 完全対応 ありFirefox 完全対応 3.5
補足
完全対応 3.5
補足
補足 Since Firefox 4 the browser returns true when 'Work Offline' mode is disabled and false when it is enabled, regardless of actual connectivity.
完全対応 4
補足
補足 Since Firefox 41, on OS X and Windows, the returned values follow the actual network connectivity, unless 'Work offline' mode is selected (where it will always return false).
IE 完全対応 8
補足
完全対応 8
補足
補足 in Internet Explorer 8 'online' and 'offline' events are raised on the document.body; under IE 9 they are raised on both document.body and window.
Opera 未対応 なし
補足
未対応 なし
補足
補足 Since Opera 11.10, the browser returns true when 'Work Offline' mode is disabled and false when it is enabled, regardless of actual connectivity.
Safari 完全対応 5WebView Android 完全対応 あり
補足
完全対応 あり
補足
補足 Faulty in a WebView component, see Issue bug 16760.
Chrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 4Opera Android ? Safari iOS 完全対応 ありSamsung Internet Android ?

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

注記

Firefox 3 で導入された新しいオフライン関連イベントと、このプロパティの詳しい説明は、Online/Offline Events‎ を参照してください。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: isdh, ryutamaki, yyss, dextra, fscholz, khalid32, ethertank, Potappo, Norah, Mgjbot
最終更新者: isdh,