Spec-Zone.ru › Web APIs

SpeechSynthesis: событие voiceschanged

Событие voiceschanged из API для работы с речью срабатывает, когда список объектов SpeechSynthesisVoice, которые возвращает метод SpeechSynthesis.getVoices(), изменяется (при срабатывании события voiceschanged).

Синтаксис

Используйте имя события в методах, таких как addEventListener(), или установите обработчик события.

addEventListener("voiceschanged", (event) => {});

onvoiceschanged = (event) => {};

Тип события

Общее событие Event без дополнительных свойств.

Примеры

Это можно использовать для повторного заполнения списка голосов, из которых пользователь может выбрать, когда срабатывает это событие. Вы можете использовать событие voiceschanged в методе addEventListener:

const synth = window.speechSynthesis;

synth.addEventListener("voiceschanged", () => {
  const voices = synth.getVoices();
  for (let i = 0; i < voices.length; i++) {
    const option = document.createElement("option");
    option.textContent = `${voices[i].name} (${voices[i].lang})`;
    option.setAttribute("data-lang", voices[i].lang);
    option.setAttribute("data-name", voices[i].name);
    voiceSelect.appendChild(option);
  }
});

Или использовать свойство обработчика события onvoiceschanged:

const synth = window.speechSynthesis;
synth.onvoiceschanged = () => {
  const voices = synth.getVoices();
  for (let i = 0; i < voices.length; i++) {
    const option = document.createElement("option");
    option.textContent = `${voices[i].name} (${voices[i].lang})`;
    option.setAttribute("data-lang", voices[i].lang);
    option.setAttribute("data-name", voices[i].name);
    voiceSelect.appendChild(option);
  }
};

Спецификации

Спецификация
Web Speech API
# eventdef-speechsynthesis-voiceschanged
Web Speech API
# dom-speechsynthesis-onvoiceschanged

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
voiceschanged_event 33 14 49 21 16 33 62 Нет 16 3.0 Нет

См. также

  • API для работы с речью

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesis/voiceschanged_event

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API