MIDIAccess:statechange 事件

可用性有限

此功能不是基线功能,因为它在一些最广泛使用的浏览器中无法使用。

安全上下文:此功能仅在 安全上下文(HTTPS)中可用,在某些或所有 支持的浏览器中可用。

MIDIAccess 接口的 statechange 事件在添加新的 MIDI 端口或现有端口状态发生更改时触发。

语法

在诸如 addEventListener() 之类的 方法中使用事件名称,或设置事件处理程序属性。

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

onstatechange = (event) => {};

事件类型

事件属性

MIDIConnectionEvent.port 只读

返回对已连接或断开的端口的 MIDIPort 实例的引用。

示例

Navigator.requestMIDIAccess() 方法返回一个 promise,该 promise 解析为 MIDIAccess 对象。当端口状态发生更改时,有关该端口的信息将打印到控制台。

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

规范

规范
Web MIDI API
# dom-midiaccess-onstatechange

浏览器兼容性

BCD 表仅在浏览器中加载