Please help me how to run javascript

how to run this code.when i run it’s run successfully but javascript not working

Document
Select Voice: <select id='voiceList'></select> <br><br>

<input id='txtInput' /> <br><br>    
<button id='btnSpeak'>Speak!</button>

<script>
    var txtInput = document.querySelector('#txtInput');
    var voiceList = document.querySelector('#voiceList');
    var btnSpeak = document.querySelector('#btnSpeak');
    var synth = window.speechSynthesis;
    var voices = [];

    PopulateVoices();
    if(speechSynthesis !== undefined){
        speechSynthesis.onvoiceschanged = PopulateVoices;
    }

    btnSpeak.addEventListener('click', ()=> {
        var toSpeak = new SpeechSynthesisUtterance(txtInput.value);
        var selectedVoiceName = voiceList.selectedOptions[0].getAttribute('data-name');
        voices.forEach((voice)=>{
            if(voice.name === selectedVoiceName){
                toSpeak.voice = voice;
            }
        });
        synth.speak(toSpeak);
    });

    function PopulateVoices(){
        voices = synth.getVoices();
        var selectedIndex = voiceList.selectedIndex < 0 ? 0 : voiceList.selectedIndex;
        voiceList.innerHTML = '';
        voices.forEach((voice)=>{
            var listItem = document.createElement('option');
            listItem.textContent = voice.name;
            listItem.setAttribute('data-lang', voice.lang);
            listItem.setAttribute('data-name', voice.name);
            voiceList.appendChild(listItem);
        });

        voiceList.selectedIndex = selectedIndex;
    }
</script>
1 Like

please u can make simple aia by using this code please help me please :pray:t2: :pray:t2: :pray:t2:

@topgatgets I can see several things wrong with the code that would keep the code from running properly, but I’m not sure what you are trying the achieve. For us to help you better, you need to be more specific. Can you tell us what you would like the code to do?

2 Likes

Text to speech by using javascript