ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript がネットワークを検出する方法

JavaScript がネットワークを検出する方法

藏色散人
リリース: 2023-01-06 11:14:10
オリジナル
8612 人が閲覧しました

ネットワークを検出する Javascript メソッド: 1. ナビゲーターを通じてネットワークを検出します。 2. "window.ononline" および "window.onoffline" イベントを使用してブラウザーのネットワーク ステータスを監視します。 3. ajax を通じてネットワークを検出します。リクエスト。

JavaScript がネットワークを検出する方法

#この記事の動作環境: Windows7 システム、JavaScript バージョン 1.8.5、DELL G3 コンピューター

JavaScript がネットワークの状態を決定します

1. ネットワークの状態を判断するには、HTML5 が提供するナビゲーターを使用してネットワークを検出するのが一般的です。
<script type="text/javascript">
	// 通过window.navigator.onLine 来检测网络是否可用
    alert(window.navigator.onLine); // 返回的是一个bool值(true表示已连接,false表示未连接)
</script>
ログイン後にコピー

JavaScript がネットワークを検出する方法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>
ログイン後にコピー

JavaScript がネットワークを検出する方法注: このメソッドは「リスナー」に属し、ネットワークが接続または切断された瞬間にのみトリガーされます。

概要:

navigator.onLine および onlineoffline イベントは全能ではなく、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 リクエストを開始し、次の情報に基づいてネットワーク接続を判断できます。リクエストの結果

<script type="text/javascript">
	$.ajax({
	  url: &#39;https://sug.so.360.cn/suggest&#39;,
	  dataType:&#39;jsonp&#39;,
	  success: function(result){
	    console.log(&#39;网络正常&#39;)
	  }, 
	  error: function(result){
	    console.log(&#39;网络异常&#39;)
	  }
	});
</script>
ログイン後にコピー
もちろん、この方法は完璧ではなく、あまり実用的ではありません。サーバーに障害があるのか​​、ユーザーのネットワークに問題があるのか​​をよく区別することはできませんが、これが最も効果的な方法であることは間違いありません。 。

以上がJavaScript がネットワークを検出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート