MediaStreamTrack: ended イベント
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2017年9月以降、すべてのブラウザーで利用可能です。
ended は MediaStreamTrack インターフェイスのイベントで、メディアの終端に到達したため、あるいはそれ以上のデータが利用できないために再生やストリーミングが停止したときに発行さ れます。
このイベントはキャンセル不可で、バブリングしません。
構文
このイベント名を addEventListener() のようなメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
js
addEventListener("ended", (event) => {});
onended = (event) => {};
イベント型
一般的な Event です。
使用上のメモ
ended イベントは、メディアストリームトラックのソースがストリームのデータ送信を恒久的に停止したときに発行されます。これが起こるには、以下のような様々な方法があります。
- 送信できるデータが残っていない。
- ユーザーがデータ送信に必要な権限を剥奪した。
- 送信元データを生成していたハードウェアが取り外されたか、排出された。
- リモート通信相手がデータの送信を永久に停止した。メディアを
例
この例では、 ended イベントのイベントハンドラーを設定しています。このイベントハンドラーでは、トラックがアクティブでない状態を示すために画面上のアイコンを変更します。
js
track.addEventListener("ended", () => {
let statusElem = document.getElementById("status-icon");
statusElem.src = "/images/stopped-icon.png";
});
onended プロパティを使用してイベントハンドラーを設定することもできます。
js
track.onended = function () {
let statusElem = document.getElementById("status-icon");
statusElem.src = "/images/stopped-icon.png";
};
仕様書
| 仕様書 |
|---|
| Media Capture and Streams> # dom-mediastreamtrack-onended> |