SpeechSynthesisErrorEvent - 包含在语音服务中处理 SpeechSynthesisUtterance 对象时发生的错误信息
这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。
SpeechSynthesisErrorEvent
是 Web Speech API 的接口,包含在语音服务中处理 SpeechSynthesisUtterance
对象时发生的错误信息。
属性
SpeechSynthesisErrorEvent
扩展了 SpeechSynthesisEvent
接口,该接口从其父接口 Event
继承了属性。
SpeechSynthesisErrorEvent.error
只读
返回一个错误代码,指示尝试语音合成出了什么问题。
方法
SpeechSynthesisErrorEvent
扩展了 SpeechSynthesisEvent
接口,该接口从其父接口 Event
继承了方法。
实例
var synth = window.speechSynthesis;
var inputForm = document.querySelector('form');
var inputTxt = document.querySelector('input');
var voiceSelect = document.querySelector('select');
var voices = synth.getVoices();
...
inputForm.onsubmit = function(event) {
event.preventDefault();
var utterThis = new SpeechSynthesisUtterance(inputTxt.value);
var selectedOption = voiceSelect.selectedOptions[0].getAttribute('data-name');
for(i = 0; i < voices.length ; i++) {
if(voices[i].name === selectedOption) {
utterThis.voice = voices[i];
}
}
synth.speak(utterThis);
utterThis.onerror = function(event) {
console.log('语音合成发生错误:' + event.error);
}
inputTxt.blur();
}
规范
规范 | 状态 | 备注 |
---|---|---|
Web Speech API SpeechSynthesisErrorEvent 的定义 |
草稿 | - |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 33 | ≤18 | 49 | 不支持 | 21 | 7 |
error | 33 | ≤18 | 49 | 不支持 | 21 | 7 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 不支持 | 33 | 未知 | 62 61 — 62 | 未知 | 不支持 | 7 |
error | 不支持 | 33 | 未知 | 62 61 — 62 | 未知 | 不支持 | 7 |