Con le API offline in HTML5, non c'è scusa per non offrire un'esperienza offline impeccabile agli utenti. Una cosa che può aiutare questa storia è la proprietà navigator.onLine
, una funzionalità che è apparsa di recente nel canale Dev di Chrome. Questa proprietà restituisce true
o false
, a seconda che l'app disponga o meno di connettività di rete:
if (navigator.onLine) {
console.log('ONLINE!');
} else {
console.log('Connection flaky');
}
Un'app web può anche ascoltare gli eventi online
e offline
per determinare quando la connessione è di nuovo disponibile o quando un'app è offline:
window.addEventListener('online', function(e) {
// Re-sync data with server.
}, false);
window.addEventListener('offline', function(e) {
// Queue up events for server.
}, false);
Ho pubblicato una demo funzionante all'indirizzo http://html5-demos.appspot.com/static/navigator.onLine.html. Per ulteriori informazioni sugli eventi offline, consulta la MDN.