#この記事の動作環境: Windows7 システム、JavaScript バージョン 1.8.5、DELL G3 コンピューターJavaScript がネットワークの状態を決定します 1. ネットワークの状態を判断するには、HTML5 が提供するナビゲーターを使用してネットワークを検出するのが一般的です。ネットワークを検出する Javascript メソッド: 1. ナビゲーターを通じてネットワークを検出します。 2. "window.ononline" および "window.onoffline" イベントを使用してブラウザーのネットワーク ステータスを監視します。 3. ajax を通じてネットワークを検出します。リクエスト。
<script type="text/javascript"> // 通过window.navigator.onLine 来检测网络是否可用 alert(window.navigator.onLine); // 返回的是一个bool值(true表示已连接,false表示未连接) </script>
2. ブラウザのネットワーク ステータスを監視する場合は、window.ononline および window.onoffline イベントを使用します:
<script type="text/javascript"> window.addEventListener("offline",function(){alert("网络连接恢复");}) window.addEventListener("online",function(){alert("网络连接中断");}) </script>
<script type="text/javascript"> window.ononline=function(){alert("网络连接恢复");} window.onoffline=function(){alert("网络连接中断");} </script>
注: このメソッドは「リスナー」に属し、ネットワークが接続または切断された瞬間にのみトリガーされます。
navigator.onLine および online
、offline
イベントは全能ではなく、PC 側でのみ機能します。ワイヤレス ケーブルとネットワーク ケーブルが接続されているかどうかは判断できますが、ネットワークが存在するかどうか、またはインターネットにアクセスできるかどうかは判断できません。 #より安全なアプローチ:
<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>
オンライン イベントを検出するには、イベントをウィンドウ オブジェクトにバインドする必要があることに注意してください。
# #attachEvent - 互換性: IE7、IE8、Firefox、Chrome、IE9、IE10、IE11、safari、operaとは互換性なし addEventListener - 互換性: Firefox、Chrome、IE、safari、opera、IE7、IE8とは互換性なし
推奨学習: 「javascript Advanced Tutorial
3. Ajax リクエストを開始し、次の情報に基づいてネットワーク接続を判断できます。リクエストの結果 以上がJavaScript がネットワークを検出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。<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>