Как сделать Чтение Текста?

Я пытался на JS создать Чтение Текста с помощью бота, и использовал этот код:

const message = new SpeechSynthesisUtterance();
message.lang = "ru-RU";
message.text = 'Какой-то текст'
window.speechSynthesis.speak(message)

Но не получается, за того "Используется устаревшая функция"

"Вызов метода speechSynthesis.speak() без активации пользователем не поддерживается. В дальнейшем эта возможность будет удалена."

Как мне это исправить, или какой код вместо этого написать?

Я бы мог найти код в Инете, если бы везде не использовался speechSynthesis


Ответы (1 шт):

Автор решения: Andrey Semykin

В Firefox все работает. А Chrome требуется действие пользователя для запуска функции. Так будет работать:

speech.addEventListener('click', function() {
  const message = new SpeechSynthesisUtterance();
  message.lang = "ru-RU";
  message.text = 'Какой-то текст'
  window.speechSynthesis.speak(message);
});
<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">

<head>
  <meta charset="utf-8" />
  <title></title>
</head>

<body>

  <button id="speech">Жми сюда!</button>

</body>

</html>

→ Ссылка