MIDIAccess: statechange イベント

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

MIDIAccess インターフェイスの statechange イベントは、新しい MIDI ポートが追加されるか、既存のポートの状態が変わると発火します。

構文

イベント名を addEventListener() のようなメソッドで用いるか、イベントハンドラープロパティを設定します。

js
addEventListener("statechange", (event) => {});

onstatechange = (event) => {};

イベント型

MIDIConnectionEvent です。Event を継承しています。

Event MIDIConnectionEvent

イベントプロパティ

MIDIConnectionEvent.port 読取専用

接続または切断されたポートを表す MIDIPort のインスタンスへの参照を返します。

Navigator.requestMIDIAccess() メソッドが MIDIAccess オブジェクトで解決する Promise を返します。ポートの状態が変わると、そのポートの情報をコンソールに出力します。

js
navigator.requestMIDIAccess().then((access) => {
  access.onstatechange = (event) => {
    console.log(event.port.name, event.port.manufacturer, event.port.state);
  };
});

仕様書

Specification
Web MIDI API
# dom-midiaccess-onstatechange

ブラウザーの互換性

BCD tables only load in the browser