SpeechSynthesisEvent - 包含语音服务中 SpeechSynthesisUtterance 对象的信息

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

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

属性

SpeechSynthesisEvent 接口还从其父接口 Event 继承了属性。

SpeechSynthesisEvent.charIndex 只读

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

SpeechSynthesisEvent.elapsedTime 只读

返回从 SpeechSynthesisUtterance.text 开始说出触发事件的时间起经过的毫秒数。

SpeechSynthesisEvent.name 只读

返回与说出 SpeechSynthesisUtterance.text 时发生的某些事件类型相关的名称:如果是 mark 事件,则为 SSML 标记的名称;如果是 boundary 事件,则为边界的类型。

SpeechSynthesisEvent.utterance 只读

返回触发事件的 SpeechSynthesisUtterance 实例。

方法

SpeechSynthesisEvent 接口还从其父接口 Event 继承了方法。

更多实例

utterThis.onpause = function(event) {
  var char = event.utterance.text.charAt(event.charIndex);
  console.log('语音在 "' + event.utterance.text + '" 的第 ' + event.charIndex + ' 个字符处暂停,字符是 "' + char + '"。');
}

utterThis.onboundary = function(event) {
  console.log(event.name + '在 ' + event.elapsedTime + ' 毫秒之后到达边界。');
}

规范

规范 状态 备注
Web Speech API
SpeechSynthesisEvent 的定义
草稿 -

桌面浏览器兼容性

特性ChromeEdgeFirefoxInternet ExplorerOperaSafari
基础支持33≤1849 不支持217
charIndex331449 不支持217
elapsedTime331449 不支持217
name331449 不支持217
utterance331449 不支持217

移动浏览器兼容性

特性AndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
基础支持 不支持33 未知

62

61 — 62

未知 不支持7
charIndex 不支持33 未知

62

61 — 62

未知 不支持7
elapsedTime 不支持33 未知

62

61 — 62

未知 不支持7
name 不支持33 未知

62

61 — 62

未知 不支持7
utterance 不支持33 未知

62

61 — 62

未知 不支持7

相关链接