This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The lang
property of the SpeechSynthesisUtterance
interface gets and sets the language of the utterance.
If unset, the app's (i.e. the <html>
lang
value) lang will be used, or the user-agent default if that is unset too.
Syntax
var myLang = speechSynthesisUtteranceInstance.lang; speechSynthesisUtteranceInstance.lang = 'en-US';
Value
A DOMString
representing a BCP 47 language tag.
Examples
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];
}
}
utterThis.lang = 'en-US';
synth.speak(utterThis);
inputTxt.blur();
}
Specifications
Specification | Status | Comment |
---|---|---|
Web Speech API The definition of 'lang' in that specification. |
Draft |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 33 | (Yes) | 49 (49) | No support | ? | 7 |
Feature | Android | Chrome | Edge | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | No support | 2.0 | No support | No support | 7.1 |
See also
Document Tags and Contributors
Tags:
Contributors to this page:
abbycar,
chrisdavidmills
Last updated by:
abbycar,