Méthodes permettant à JavaScript de détecter le réseau : 1. Détecter le réseau via le navigateur ; 2. Utiliser les événements "window.ononline" et "window.onoffline" pour surveiller l'état du réseau du navigateur ; 3. Détecter le réseau via ; requête ajax.
L'environnement d'exploitation de cet article : système Windows7, javascript version 1.8.5, ordinateur DELL G3
JavaScript pour déterminer l'état du réseau
<script type="text/javascript"> // 通过window.navigator.onLine 来检测网络是否可用 alert(window.navigator.onLine); // 返回的是一个bool值(true表示已连接,false表示未连接) </script>
.
<script type="text/javascript"> window.addEventListener("offline",function(){alert("网络连接恢复");}) window.addEventListener("online",function(){alert("网络连接中断");}) </script>
ou :
<script type="text/javascript"> window.ononline=function(){alert("网络连接恢复");} window.onoffline=function(){alert("网络连接中断");} </script>
Remarque : Cette méthode appartient au "écouteur" et ne sera déclenchée qu'au moment où le réseau sera connecté/déconnecté.
Résumé : navigator.onLine
et online
, offline
les événements ne sont pas omnipotents Côté PC, il peut uniquement déterminer si les câbles sans fil et réseau sont connectés, mais pas. s'il existe un réseau, si vous pouvez accéder à Internet.
Une approche plus sûre :
<script type="text/javascript"> var el = document.body; if (el.addEventListener) { window.addEventListener("online", function () { alert("网络连接恢复");}, true); window.addEventListener("offline", function () { alert("网络连接中断");}, true); } else if (el.attachEvent) { window.attachEvent("ononline", function () { alert("网络连接恢复");}); window.attachEvent("onoffline", function () { alert("网络连接中断");}); } else { window.ononline = function () { alert("网络连接恢复");}; window.onoffline = function () { alert("网络连接中断");}; } </script>
Notez que pour détecter l'événement ononline, il doit être lié à l'objet window
attachEvent - compatible avec : IE7, IE8 ; non compatible avec Firefox, Chrome, IE9, IE10, IE11, Safari, Opera
addEventListener - compatible avec : Firefox, Chrome, IE, Safari, Opera non compatible avec IE7, IE8 ;
Apprentissage recommandé : "Tutoriel JavaScript avancé"
<script type="text/javascript"> $.ajax({ url: 'https://sug.so.360.cn/suggest', dataType:'jsonp', success: function(result){ console.log('网络正常') }, error: function(result){ console.log('网络异常') } }); </script>
Bien sûr, cette méthode n'est pas parfaite, et elle n'est pas très pratique. Elle ne peut pas bien distinguer s'il y a une panne de serveur ou un problème avec le réseau de l'utilisateur, mais c'est bien le plus. manière efficace.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!