Dzięki interfejsom API offline w HTML5 nie ma powodu, aby zapewnić użytkownikom bezproblemowe działanie offline. Jedną z rzeczy, które może w tym pomóc, jest właściwość navigator.onLine
, która niedawno pojawiła się w wersji deweloperskiej Chrome. Ta właściwość zwraca wartość true
lub false
w zależności od tego, czy aplikacja ma połączenie sieciowe:
if (navigator.onLine) {
console.log('ONLINE!');
} else {
console.log('Connection flaky');
}
Aplikacja internetowa może też nasłuchiwać zdarzeń online
i offline
, aby określić, kiedy połączenie będzie ponownie dostępne lub kiedy aplikacja przejdzie do trybu offline:
window.addEventListener('online', function(e) {
// Re-sync data with server.
}, false);
window.addEventListener('offline', function(e) {
// Queue up events for server.
}, false);
Na stronie http://html5-demos.appspot.com/static/navigator.onLine.html została opublikowana działająca demonstracja, a więcej informacji o zdarzeniach offline znajdziesz w MDN.