SpeechSynthesisErrorEvent: error-Eigenschaft
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.
Die error
Eigenschaft des
SpeechSynthesisErrorEvent
-Interfaces gibt einen Fehlercode zurück, der angibt, was bei einem Sprachsyntheseversuch schiefgelaufen ist.
Wert
Ein String, der den Grund des Fehlers enthält. Mögliche Werte sind:
canceled
-
Ein Aufruf der Methode
SpeechSynthesis.cancel
führte dazu, dass dieSpeechSynthesisUtterance
aus der Warteschlange entfernt wurde, bevor sie zu sprechen begann. interrupted
-
Ein Aufruf der Methode
SpeechSynthesis.cancel
führte dazu, dass dieSpeechSynthesisUtterance
unterbrochen wurde, nachdem sie zu sprechen begonnen hatte und bevor sie abgeschlossen wurde. audio-busy
-
Der Vorgang konnte zu diesem Zeitpunkt nicht abgeschlossen werden, weil der User-Agent nicht auf das Audioausgabegerät zugreifen konnte (zum Beispiel muss der Benutzer möglicherweise eine andere Anwendung schließen).
audio-hardware
-
Der Vorgang konnte zu diesem Zeitpunkt nicht abgeschlossen werden, weil der User-Agent kein Audioausgabegerät identifizieren konnte (zum Beispiel muss der Benutzer möglicherweise einen Lautsprecher anschließen oder die Systemeinstellungen konfigurieren).
network
-
Der Vorgang konnte zu diesem Zeitpunkt nicht abgeschlossen werden, weil eine erforderliche Netzwerkkommunikation fehlgeschlagen ist.
-
Der Vorgang konnte zu diesem Zeitpunkt nicht abgeschlossen werden, weil keine Synthesemaschine verfügbar war (zum Beispiel muss der Benutzer möglicherweise eine Synthesemaschine installieren oder konfigurieren).
synthesis-failed
-
Der Vorgang schlug fehl, weil die Synthesemaschine einen Fehler verursacht hat.
-
Keine passende Stimme war für die in
SpeechSynthesisUtterance.lang
gesetzte Sprache verfügbar. Sie können die Methodewindow.speechSynthesis.getVoices()
verwenden, um festzustellen, welche Stimmen und Sprachen im Browser des Benutzers unterstützt werden. -
Die in
SpeechSynthesisUtterance.voice
gesetzte Stimme war nicht verfügbar. text-too-long
-
Der Inhalt des Attributs
SpeechSynthesisUtterance.text
war zu lang, um synthetisiert zu werden. invalid-argument
-
Der Inhalt der Eigenschaft
SpeechSynthesisUtterance.rate
,SpeechSynthesisUtterance.pitch
oderSpeechSynthesisUtterance.volume
war nicht gültig. not-allowed
-
Der Start des Vorgangs war nicht erlaubt.
Beispiele
const synth = window.speechSynthesis;
const inputForm = document.querySelector("form");
const inputTxt = document.querySelector("input");
const voiceSelect = document.querySelector("select");
const voices = synth.getVoices();
// ...
inputForm.onsubmit = (event) => {
event.preventDefault();
const utterThis = new SpeechSynthesisUtterance(inputTxt.value);
const selectedOption =
voiceSelect.selectedOptions[0].getAttribute("data-name");
for (let i = 0; i < voices.length; i++) {
if (voices[i].name === selectedOption) {
utterThis.voice = voices[i];
}
}
synth.speak(utterThis);
utterThis.onerror = (event) => {
console.error(
`An error has occurred with the speech synthesis: ${event.error}`,
);
};
inputTxt.blur();
};
Spezifikationen
Specification |
---|
Web Speech API # dom-speechsynthesiserrorevent-error |
Browser-Kompatibilität
BCD tables only load in the browser