Domanda

Sto cercando di scrivere un'estensione che cacherà il contenuto della pagina per la lettura offline. Se l'utente attiva il popup dell'estensione mentre è offline, vorrei mostrare il contenuto memorizzato nella cache. Attualmente, sto pensando di poter fare una richiesta AJAX e aspettare di vedere se fallisce, ma se c'è una parte dell'API Chrome che mi consentirebbe di fare più rapidamente, sarebbe l'ideale.

Ho fatto un po 'di googling e non mi sono imbattuto in nulla.

È stato utile?

Soluzione

if (navigator.onLine) {
  // Online
} else {
  // Offline
}

Supporta anche gli ascoltatori di eventi.

https://developer.mozilla.org/en/online_and_offline_events

Altri suggerimenti

Sembra che navigator.online controlli per una connessione di rete, non necessariamente una connessione Internet. Se si desidera confermare che l'utente ha accesso a Internet, penso che tu possa utilizzare questa opzione insieme a una richiesta AJAX periodica o su richiesta a Google o ad un altro sito affidabile e monitorare la risposta per determinare se l'utente ha un Internet stabile connessione.

Provato navigator.onLine ? Ho letto che è inaffidabile, ma ho appena fatto un test (disconnessione dal WiFi) e ha funzionato.

Navigator.Online Reports correttamente nella maggior parte dei casi, ma uno che ho trovato dove non è corretto è se dovessi disabilitare il WiFi, ma si dispone di un cavo Ethernet Poe collegato alla porta della NIC. Anche se il telefono potrebbe essere offline, Navigator.Online riporta che il browser è effettivamente online.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top