[js] tester la connexion internet

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

Est-ce qu'il y a moyen, en javascript, de savoir si l'ordinateur est connecté ou non à internet ?
J'ai en fond d'écran ma page html (qui vient d'un fichier sur mon disque dur) bourrée de js, et j'ai eu l'idée de rediriger (avec location.href) vers une page php si c'est bien possible. Comment le savoir ? Je n'aimerais pas qu'il tente de me rediriger vers http://.../toto.php si je n'ai pas de connexion...

Merci d'avance
A voir également:

2 réponses

Utilisateur anonyme
 
J'ai trouvé cette méthode : http://www.webmasterworld.com/forum91/2420.htm
Mais elle est foireuse à cause du cache... Mais si quelqu'un saurait me dire comment la "défoirer" ça me va :).

Sinon, je précise aussi que, vu que c'est mon fond d'écran, je peux utiliser un ActiveX (ce que j'utilise déjà d'ailleurs) mais je n'ai pas trouvé comment faire un ping avec (ni/ou tester la connexion d'une autre manière avec).
0
Utilisateur anonyme
 
Bon, pour ceux qui seraient intéressés, j'ai trouvé un moyen (bien tordu) mais ça à l'air de bien marcher sous IE (pas sous firefox mais je m'en fous).
Sous IE les .js ne sont apparemment pas stockés dans le cache.
Du coup, j'essaye d'aller en pêcher un (par exemple le xiti.js de ccm) dont je connais une variable et sa valeur (dans le xiti de ccm la variable xtdr vaut 30), je déclare la même dans mon code initialisée avec une autre valeur.
Je n'ai plus qu'à tester si cette valeur change ou non (si le js a pu être chargé ou non) une seconde après la tentative.
Si pas de connexion, je lui change son src pour qu'il arrête d'essayer de me récupérer le js inaccessible :).

<html>
<body>
<script>
function check(t) {
alert("valeur test="+t);
if(t == 1) {
alert("pas de connexion :(");
document.getElementById("script").src="toto.js"; //=> un fichier .js local
} else {
alert('connexion ok :)');
}
}

var xtdr = 1;
setTimeout("check(xtdr);", 1000);
</script>
<script id="script" type="text/javascript" src="http://static.commentcamarche.net/www.commentcamarche.net/remote/xiti.js"></script>
</body>
</html>

Remarque : C'est juste pour l'exemple que j'ai pris le xiti.js de ccm. Je ne sais pas s'il peut y avoir une raison qu'il change mais je pense qu'il vaut mieux essayer de pêcher un autre .js ailleurs dont on est sûr qu'il ne changera pas.
0