Мне нужно использовать службу google translate в мобильном браузере, чтобы позволить пользователю прослушивать выделенный текст в мобильном веб-приложении, нажимая кнопку или гиперссылку.
Следующий код работает в браузере настольного компьютера (Google Chrome 75; Edge)но не работает в мобильном браузере iOS 12.3.1 вместе с Safari или Chrome mobile 75.0.3770.103 вообще.
<script>
var playBtn = document.getElementById('play');
var stopBtn = document.getElementById('stop');
var playSound = function() {
audio.play();
};
playBtn.addEventListener('click', playSound, false);
stopBtn.addEventListener('click', function(){audio.pause()}, false);
</script>
<body>
<h1>Audio Test</h1>
<p>Simple example</p>
<div>
<audio id="audio" src="http://translate.google.com/translate_tts?tl=en&q=hello%20world!&client=tw-ob" ></audio>
<button id="play">Play</button>
<button id="stop">Stop</button>
</div>
</body>
Я обнаружил, что проблема в URL-адресе переводчика Google.Когда я добавляю в аудио src стандартный mp3 / mp4 файл, все работает, но этот URL для Google Translate обслуживает только в настольных браузерах: http://translate.google.com/translate_tts?tl=en&q=hello%20world!&client=tw-ob