SYNCERのロゴ
アイキャッチ画像

NetworkInformation.onchange - ネットワーク情報が更新された時に発火するイベント

onchangeは、NetworkInformationのイベントです。内部でネットワーク情報が更新された時にchangeイベントが発生し、ここに設定したコールバック関数が呼び出されます。

概要

名前
onchange
所属
NetworkInformation
イベント
change
IDL
attribute EventHandler onchange;

typedef EventHandlerNonNull? EventHandler;

callback EventHandlerNonNull = any (Event event);
仕様書
https://wicg.github.io/netinfo/#dom-networkinformation-onchange

チュートリアル

onchangeでイベントを設定する例です。

var networkInfomation = navigator.connection ;

networkInfomation.onchange = function ( event ) {
	console.log( event ) ;
}

Event.addEventListener()でも、同様にイベントを設定できます。

networkInfomation.addEventListener( "change", function ( event ) {
	console.log( event ) ;
} ) ;

デモ

NetworkInformation.onchangeのデモです。手っ取り早く確認するには、ネットワークを切断してまた接続してみて下さい。

<!-- このコードは編集できます。 -->

<!DOCTYPE html>
<html>
<head>
<style>
body { word-break: break-all ; }
div#result { white-space: pre-wrap ; }
</style>
</head>
<body>
<div id="result"></div>
<hr>
<p>イベントの発生回数→<span id="count">0</span></p>
<script>
var number = 0 ;
var networkConnection = navigator.connection ;

networkConnection.onchange = getNetworkInfo ;

function getNetworkInfo( event ) {
	document.getElementById( "result" ).textContent = "" ;
	document.getElementById( "count" ).textContent = ++number ;

	if ( event ) console.log( event ) ;
	console.log( networkConnection ) ;
	appendText( networkConnection + "\n" ) ;

	appendText( "type: " + networkConnection.type + "\n" ) ;
	appendText( "effectiveType: " + networkConnection.effectiveType + "\n" ) ;
	appendText( "downlinkMax: " + networkConnection.downlinkMax + "\n" ) ;
	appendText( "downlink: " + networkConnection.downlink + "\n" ) ;
	appendText( "rtt: " + networkConnection.rtt + "\n" ) ;
	appendText( "saveData: " + networkConnection.saveData + "\n" ) ;
}

function appendText ( text ) {
	document.getElementById( "result" ).appendChild( document.createTextNode( text ) ) ;
}
</script>
</body>
</html>

サポート状況

ChromeFirefoxSafariEdgeIEOperaiOS SafariAndroid
61+×××× 48+××
  • Twitterでシェア
  • Facebookでシェア
  • Google+でシェア
  • はてなブックマークでシェア
  • pocketに保存
  • LINEでシェア
更新履歴
2017年10月15日 (日)
コンテンツを公開しました。