SpeechSynthesisEvent
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.
The SpeechSynthesisEvent
interface of the Web Speech API contains information about the current state of SpeechSynthesisUtterance
objects that have been processed in the speech service.
Constructor
SpeechSynthesisEvent()
-
Creates a new
SpeechSynthesisEvent
.
Instance properties
The SpeechSynthesisEvent
interface also inherits properties from its parent interface, Event
.
SpeechSynthesisEvent.charIndex
Read only-
Returns the index position of the character in the
SpeechSynthesisUtterance.text
that was being spoken when the event was triggered. SpeechSynthesisEvent.charLength
Read only-
Returns the number of characters left to be spoken after the
charIndex
position, if the speaking engine supports it. Returns 0 if the speaking engine can't provide the information. SpeechSynthesisEvent.elapsedTime
Read only-
Returns the elapsed time in seconds after the
SpeechSynthesisUtterance.text
started being spoken that the event was triggered at. SpeechSynthesisEvent.name
Read only-
Returns the name associated with certain types of events occurring as the
SpeechSynthesisUtterance.text
is being spoken: the name of the SSML marker reached in the case of amark
event, or the type of boundary reached in the case of aboundary
event. SpeechSynthesisEvent.utterance
Read only-
Returns the
SpeechSynthesisUtterance
instance that the event was triggered on.
Instance methods
The SpeechSynthesisEvent
interface also inherits methods from its parent interface, Event
.
Examples
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.`,
);
};
Specifications
Specification |
---|
Web Speech API # speechsynthesisevent |
Browser compatibility
BCD tables only load in the browser