SpeechSynthesisEvent

基线 广泛可用

此功能已得到良好建立,可在许多设备和浏览器版本中运行。自 2018 年 9 月.

SpeechSynthesisEventWeb 语音 API 的一个接口,包含有关已在语音服务中处理的 SpeechSynthesisUtterance 对象的当前状态的信息。

Event SpeechSynthesisEvent

构造函数

SpeechSynthesisEvent()

创建一个新的 SpeechSynthesisEvent

实例属性

SpeechSynthesisEvent 接口也继承了其父接口 Event 的属性。

SpeechSynthesisEvent.charIndex 只读

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

SpeechSynthesisEvent.charLength 只读

如果朗读引擎支持,则返回 charIndex 位置后剩余要朗读的字符数。如果朗读引擎无法提供信息,则返回 0。

SpeechSynthesisEvent.elapsedTime 只读

返回在触发事件时 SpeechSynthesisUtterance.text 开始朗读后的经过时间(以秒为单位)。

SpeechSynthesisEvent.name 只读

返回与在朗读 SpeechSynthesisUtterance.text 时发生的某些类型的事件相关的名称:在 mark 事件的情况下,是已到达的 SSML 标记的名称;在 boundary 事件的情况下,是已到达的边界类型。

SpeechSynthesisEvent.utterance 只读

返回触发事件的 SpeechSynthesisUtterance 实例。

实例方法

SpeechSynthesisEvent 接口也继承了其父接口 Event 的方法。

示例

js
utterThis.onpause = (event) => {
  const char = event.utterance.text.charAt(event.charIndex);
  console.log(
    `Speech paused at character ${event.charIndex} of "${event.utterance.text}", which is "${char}".`,
  );
};

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

规范

规范
Web 语音 API
# speechsynthesisevent

浏览器兼容性

BCD 表格仅在启用了 JavaScript 的浏览器中加载。

参见