attenzione, mentre navigator.onLine è la soluzione più semplice, non si comporta in modo coerente su tutti i browser. Su Chrome ti dirà che è online se hai un cavo LAN, anche se non hai internet.
È possibile utilizzare il plugin Cordova network-information
Si può anche provare a fare una richiesta AJAX al server; di solito vuoi sapere se sei offline perché in quel caso non puoi comunicare con il server, quindi "offline" significa spesso "non in grado di comunicare con il server" (che può essere causato anche dal fatto che il tuo server sia offline). Anche giocare con i timeout o diverse richieste è utile se devi controllare la larghezza di banda o la qualità del collegamento.
Offline non significa la stessa per ogni caso d'uso, è necessario prima di sapere quale delle tecniche di cui sopra è più adatto per voi, quindi implementare uno o più di essi.
Quello che voglio fare è quello di verificare la connessione a Internet e decidere in procinto di ottenere i dati da internet o dal database locale dispositivo.
Sembra che controllare il collegamento con il server tramite una richiesta sia l'opzione migliore per voi.
Okay, lo proverò normale sul browser Chrome e ottengo solo false. Ma io costruisco l'app con PhoneGap e la collaudo sul mio smartphone e funziona. Grazie NULL. U mi ha aiutato molto :) –
navigator.onLine non funziona in modo affidabile, almeno non nella mia app PhoneGapp (Nexus 4 con Android 5); navigator.onLine è comunque un attributo supportato. Ho anche trovato questa domanda correlata: http://stackoverflow.com/questions/14283124/navigator-online-not-always-working. –