— Pixels Commander

[ In English, На русском ]

OnlineJS – легковесная и простая библиотека для работы со статусом интернет – соединения

При разработке мобильных Web приложений часто встречается задача определения статуса интернет – соединения, задача небольшая и каждый решает ее удобным для себя способом, Online JS – это надежная подборка лучших практик на тему, к тому же весьма небольшая по размеру и простая в использовании.

Демо

Пользоваться библиотекой просто – добавьте online.min.js в проект и в любом удобном месте проверяйте:
window.onLine === true

Так же вы можете реагировать на подключение или отключение от интернета задав обработчики window.onLineHandler / window.offLineHandler.

Из оптимизаций используются:

  • проверка соединения в фоновом режиме,
  • запрос лишь заголовков для минимизации траффика,
  • слушание событий online, offline, их дополнительная проверка.

Многие справшивают: “Почему бы не обойтись navigator.onLine для проверки соединения?”. Про это свойство и его коварство написано немало. Главная проблема – свойство реализовано не консистентно среди браузеров и зачастую отражает лишь наличие подключения к локальной сети, а в некоторых версиях FireFox зависит только от включения / выключения режима автономного просмотра.

Чистый navigator.onLine для критически важных задач не подходит. А Online JS подходит, потому что использует это свойство и соответствующие события только как один из механизмов и затем перепроверяет статус соединения. Вы можете положиться на Online JS.

Репозиторий на GitHub