SpeechSynthesisUtterance: mark イベント
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2018.
mark
はウェブ音声 API の SpeechSynthesisUtterance
オブジェクトのイベントで、発話が SSML の名前付き "mark" タグに達したときに発生します。
構文
このイベント名を addEventListener()
などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
addEventListener("mark", (event) => {});
onmark = (event) => {};
イベント型
SpeechSynthesisEvent
です。 Event
を継承しています。
イベントプロパティ
以下に挙げたプロパティに加え、親インターフェイスである Event
のプロパティが利用可能です。
charIndex
読取専用-
イベントが発生したときに発話されていた
SpeechSynthesisUtterance.text
内の文字のインデックス位置を返します。 elapsedTime
読取専用-
イベントが発生した時点の
SpeechSynthesisUtterance.text
が話し始めてからの経過時間(秒)を返します。 name
読取専用-
SpeechSynthesisUtterance.text
が発話される際に発生する特定の種類のイベントに関連する名前を返します。mark
イベントの場合は到達した SSML マーカーの名前、boundary
イベントの場合は到達した境界の種類です。 utterance
読取専用-
イベントが発生した
SpeechSynthesisUtterance
インスタンスを返します。
例
mark
イベントを addEventListener
メソッドで使用することができます。
utterThis.addEventListener("mark", (event) => {
console.log(`A mark was reached: ${event.name}`);
});
または onmark
イベントハンドラープロパティで使用することができます。
utterThis.onmark = (event) => {
console.log(`A mark was reached: ${event.name}`);
};
仕様書
Specification |
---|
Web Speech API # eventdef-speechsynthesisutterance-mark |
Web Speech API # dom-speechsynthesisutterance-onmark |
ブラウザーの互換性
BCD tables only load in the browser