online
и offline
events
Real В некоторых современных браузерах существуют специальные события online
и offline
.
Но, к сожалению, они работают не так, как хотелось бы.
В Firefox и IE событие offline
случается, когда пользователь вручную выберет Work Offline в меню.
В Chrome offline
означает, что нет ни одного активного сетевого интерфейса.
Но даже если компьютер подключен к Wi-Fi сети, это не значит, что есть доступ в интернет.
Хотя Chrome при этом будет считать, что он online
.
Поэтому, чтобы на самом деле знать, есть ли доступ в интернет, приходится пинговать какой-нибудь урл и следить за ответами.
Что и делает эта простая библиотека:
noline; ;
В no.line.init
можно передать url
, который нужно пинговать и interval
между пингами.
Дефолтные параметры:
url: '/' interval: 5000
После вызова no.line.init
можно подписаться на события no-online
и no-offline
, генерируемые на window
.
Кроме того, библиотека поддерживает нативные события online/offline
и Page Visibility API.
Пингование останавливается, если страница не в фокусе или же в оффлайне.