Чтобы определить, отключено ли подключение к Интернету в JavaScript, вы можете использовать различные методы. Вот некоторые из них:
- Использование свойства navigator.onLine. Самый простой способ — проверить значение свойства
navigator.onLine
. Он возвращаетfalse
, если браузер находится в автономном режиме.
if (navigator.onLine) {
// Connection is online
} else {
// Connection is offline
}
- Использование событий онлайн и офлайн: вы можете прослушивать события
online
иoffline
в объектеwindow
, чтобы обнаружить изменения в сети. статус.
window.addEventListener('online', function() {
// Connection is online
});
window.addEventListener('offline', function() {
// Connection is offline
});
- Использование запроса Ajax. Вы можете отправить простой запрос Ajax к известной конечной точке и проверить, успешен он или нет. Если запрос не выполнен, это означает, что соединение отключено.
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://example.com', true);
xhr.onload = function() {
// Request succeeded, connection is online
};
xhr.onerror = function() {
// Request failed, connection is offline
};
xhr.send();
- Использование API сетевой информации. Современные браузеры поддерживают API сетевой информации, который предоставляет более подробную информацию о сетевом соединении, такую как тип соединения (например, Wi-Fi, сотовая связь) и эффективный тип соединения (например, 4G, 3G). ). Вы можете использовать этот API, чтобы определить, находится ли соединение в автономном режиме.
if (navigator.connection && navigator.connection.type === 'none') {
// Connection is offline
} else {
// Connection is online
}