WorkerNavigator: свойство onLine
Базовая Широко доступная
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Примечание: Эта функция доступна только в Web Workers.
Возвращает состояние подключения браузера к сети. Свойство возвращает булево значение, где true означает подключение, а false — отключение. Свойство отправляет обновления всякий раз, когда изменяется способность браузера подключаться к сети. Обновление происходит, когда пользователь переходит по ссылкам или когда скрипт запрашивает удалённую страницу.
Например, свойство должно возвращать false когда пользователи нажимают ссылки вскоре после потери интернет-соединения.
Браузеры реализуют это свойство по-разному.
В Chrome и Safari, если браузер не может подключиться к локальной сети (LAN) или маршрутизатору, он считается отключённым; все остальные условия возвращают true. Таким образом, хотя вы можете предположить, что браузер отключён, когда он возвращает значение false, вы не можете предположить, что значение true обязательно означает, что браузер имеет доступ к интернету. Вы можете получить ложные срабатывания, например, в случаях, когда на компьютере работает программное обеспечение виртуализации с виртуальными сетевыми адаптерами, которые всегда «подключены». Поэтому, если вы действительно хотите определить состояние подключения браузера, вы должны разработать дополнительные средства для проверки. Чтобы узнать больше, ознакомьтесь со статьёй 2011 года Работа вне сети.
В Firefox, переключение браузера в автономный режим отправляет значение false.
Значение
online — это булевое true или false.
Примеры
Основные примеры использования
Чтобы проверить, подключены ли вы к интернету в рабочем процессе, запросите navigator.onLine, как показано в примере ниже:
if (navigator.onLine) {
console.log("online");
} else {
console.log("offline");
}
Если браузер не поддерживает navigator.onLine , приведенный выше пример всегда будет возвращать false/undefined.
Прослушивание изменений состояния сети
Чтобы отследить изменения в состоянии сети, используйте addEventListener, чтобы прослушать события на online и offline, как показано в примере ниже:
addEventListener("offline", (e) => {
console.log("offline");
});
addEventListener("online", (e) => {
console.log("online");
});
Спецификации
| Спецификация |
|---|
| HTML # dom-navigator-online-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
onLine |
4 | 12 | 3.5С Firefox 4 браузер возвращаетtrue при отключённом режиме «Работать в автономном режиме» и false при включённом режиме, независимо от фактического подключения. С Firefox 41 на OS X и Windows возвращаемые значения соответствуют фактическому подключению к сети, за исключением режима «Работать в автономном режиме» (в этом случае всегда возвращается false). |
10.6С Opera 11.1 по Opera 12.1 браузер возвращаетtrue при отключённом режиме «Работать в автономном режиме» и false при включённом режиме, независимо от фактического подключения. |
4 | 18 | 4 | 11С Opera 11.1 по Opera 12.1 браузер возвращаетtrue при отключённом режиме «Работать в автономном режиме» и false при включённом режиме, независимо от фактического подключения. |
5 | 1.0 | 4.4Может некорректно возвращать значение true, см. ошибку 41369933. |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WorkerNavigator/onLine