Con las API sin conexión en HTML5, no hay excusas para no proporcionar una experiencia sin conexión perfecta a los usuarios. Algo que puede ayudar con esta historia es la propiedad navigator.onLine
, una función que se lanzó recientemente en el canal para desarrolladores de Chrome. Esta propiedad muestra true
o false
según si la app tiene conectividad de red o no:
if (navigator.onLine) {
console.log('ONLINE!');
} else {
console.log('Connection flaky');
}
Una aplicación web también puede escuchar eventos online
y offline
para determinar cuándo la conexión vuelve a estar disponible o si una app pierde la conexión:
window.addEventListener('online', function(e) {
// Re-sync data with server.
}, false);
window.addEventListener('offline', function(e) {
// Queue up events for server.
}, false);
He publicado una demostración que funciona en http://html5-demos.appspot.com/static/navigator.onLine.html y puedes obtener más información sobre los eventos sin conexión en MDN.