JavaScript : rendre le Web interactif (école d'ingénieur) · Chapitre 12 · Exercice de TD
Hors connexion
Projet : la Librairie interactive · niveau 2
Énoncé
Quand le navigateur perd le réseau, afficher en haut de page « Vous êtes hors connexion : le catalogue affiché peut ne plus être à jour, et la commande attendra le retour du réseau. », et désactiver le bouton d'envoi de la commande ; tout rétablir au retour du réseau. Utiliser navigator.onLine et les événements online et offline. Cette information est-elle fiable ?
Corrigé
const bandeau = document.querySelector("#bandeau");
const commander = document.querySelector("#commander");
function mettreAJour() {
bandeau.hidden = navigator.onLine;
commander.disabled = !navigator.onLine;
}
window.addEventListener("online", mettreAJour);
window.addEventListener("offline", mettreAJour);
mettreAJour();
Le bandeau porte role="status" pour être annoncé. Vérifié en coupant puis rétablissant le réseau du navigateur (exercices/ex6-hors-ligne/). L'information n'est fiable que dans un sens : navigator.onLine faux signifie bien qu'il n'y a aucun réseau, mais vrai signifie seulement qu'une connexion existe (au réseau local, à un point d'accès Wi-Fi qui demande une identification…), pas que le serveur répond. Le traitement des échecs de fetch reste indispensable.
100 % gratuit
La suite du chapitre est sur Adloun
- 9 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.