DOM

HTMLMediaElement:timeupdate イベント

 編集:2022.11.03 by T.A.

[Edge]。→

HTMLMediaElement でシークされて再生時刻が更新されると発行されます。

mdn: currentTime 属性で示される時刻が更新されたときに発生します。

mdn:イベントの頻度はシステムの負荷に依存しますが、およそ 4Hz と 66Hz との間で発生します(イベント ハンドラーが実行するのに 250 ms 以上かかることはないと仮定します)。ユーザー エージェントはシステム負荷とその都度イベントを処理する平均コストに基づいて、イベントの頻度を変えることが推奨されているため、ユーザー エージェントがビデオのデコード中に快適に処理できるよりも頻繁にユーザー インターフェイス更新が行われることはありません。

バブリング なし
キャンセル可能 いいえ¶
インターフェイス Event
イベント ハンドラー プロパティ ontimeupdate

GlobalEventHandlers でイベント ハンドラーが定義されている。

HTML:

<VIDEO id=IdTest src="../../Sample/Eizou_M.mp4" controls></VIDEO><BR>
<SPAN id=IdLog></SPAN>

JavaScript:

function Job(eve){   //timeupdate イベントの処理:
  D=eve;
//  eve.preventDefault();     //イベントの処理動作を行うべきではない…とブラウザーに伝える。
//  DA=eve.defaultPrevented;  //その結果。true
  IdLog.innerHTML=IdLog.innerHTML+"●";
}
IdTest.ontimeupdate=Job;  //イベント割り当て。

IdTest.currentTime=5.5;

手動でシークしてもイベントは発生した。

シークのキャンセルはできないようだ。

得られた内容:D

=[object]:[object Event]
isTrusted=[boolean]:true
type=[string]:timeupdate
target=[object]:[object HTMLVideoElement]
currentTarget=[object]:null
eventPhase=[number]:0
bubbles=[boolean]:false
cancelable=[boolean]:true
defaultPrevented=[boolean]:false
composed=[boolean]:false

cancelable=[boolean]:true となっている。


テスト