VideoTrackList: change イベント

Limited availability

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

change イベントは、映像トラックがアクティブまたは非アクティブになったとき(トラックの selected プロパティを変更したときなど)に発生します。

構文

このイベント名を addEventListener() などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。

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

onchange = (event) => {};

イベント型

一般的な Event で、追加のプロパティはありません。

addEventListener() を使用する場合

js
const videoElement = document.querySelector("video");
videoElement.videoTracks.addEventListener("change", (event) => {
  console.log(`'${event.type}' イベント発生`);
});

// `selected` の値を変更すると `change` イベントを引き起こします
const toggleTrackButton = document.querySelector(".toggle-track");
toggleTrackButton.addEventListener("click", () => {
  const track = videoElement.videoTracks[0];
  track.selected = !track.selected;
});

onchange イベントハンドラープロパティを使用する場合

js
const videoElement = document.querySelector("video");
videoElement.videoTracks.onchange = (event) => {
  console.log(`'${event.type}' イベント発生`);
};

// `selected` の値を変更すると `change` イベントを引き起こします
const toggleTrackButton = document.querySelector(".toggle-track");
toggleTrackButton.addEventListener("click", () => {
  const track = videoElement.videoTracks[0];
  track.selected = !track.selected;
});

仕様書

Specification
HTML Standard
# event-media-change
HTML Standard
# handler-tracklist-onchange

ブラウザーの互換性

BCD tables only load in the browser

関連情報