SpeechSynthesisUtterance:boundary 事件

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

boundary 事件是 Web Speech API 的一部分,当语音播报到达单词或句子边界时触发。

语法

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

js
addEventListener("boundary", (event) => { })

onboundary = (event) => { }

事件类型

一个 SpeechSynthesisEvent。继承自 Event

Event SpeechSynthesisEvent

事件属性

除了下面列出的属性之外,父接口 Event 的属性也可使用。

charIndex 只读

返回事件触发时,在 SpeechSynthesisUtterance.text 中正在朗读的字符的索引位置。

elapsedTime 只读

返回事件触发时,在 SpeechSynthesisUtterance.text 开始朗读后经过的秒数。

name 只读

SpeechSynthesisUtterance.text 被播报期间,返回与特定类型事件关联的名称:对于 mark 事件,返回到达的 SSML 标记的名称;对于 boundary 事件,返回到达的边界类型。

utterance 只读

返回触发事件的 SpeechSynthesisUtterance 实例。

示例

您可以在 addEventListener 方法中使用 boundary 事件

js
utterThis.addEventListener("boundary", (event) => {
  console.log(
    `${event.name} boundary reached after ${event.elapsedTime} seconds.`,
  );
});

或者使用 onboundary 事件处理程序属性

js
utterThis.onboundary = (event) => {
  console.log(
    `${event.name} boundary reached after ${event.elapsedTime} seconds.`,
  );
};

规范

规范
Web Speech API
# eventdef-speechsynthesisutterance-boundary
Web Speech API
# dom-speechsynthesisutterance-onboundary

浏览器兼容性

另见