以下代码不适用于iOS Safari(iPad Air 2)。它适用于其他任何地方(Mac 上的 Safari,Windows 上的 Chrome)
当我尝试在 iPad 的 Safari(连接到 Mac)上调试下面的脚本时,它没有给出任何错误。它只是沉默。没有讲话。
请注意,这是一个简单的脚本,我创建了许多其他脚本,例如设置语音等。没有任何效果。获取语音也有一个单独的问题,但我想看看它是否适用于默认设置声音优先。
附言如果我进行 XCode 编程,使用 swift 在 iPad 上(而不是在 Safari 中)开发 native 代码,语音在 iPad 上工作。但我的目标是使用 Speech API 创建网页
谢谢。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
</head>
<body>
<script>
function Speak() {
speechSynthesis.speak(new SpeechSynthesisUtterance("Hello, this is my voice on a webpage"));
var speech = new SpeechSynthesisUtterance();
speech.text = "Hello";
speech.volume = 1; // 0 to 1
speech.rate = 1; // 0.1 to 9
speech.pitch = 1; // 0 to 2, 1=normal
speech.lang = "en-US";
speechSynthesis.speak(speech);
}
</script>
<a onclick="Speak()">ClickMe</a>
</body>
</html>
最佳答案
检查您的音量、静音开关并确保您没有设置蓝牙耳机。它还必须在点击事件(您正在执行的事件)中。尝试正常的视频以确保您能听到声音。
是什么让它对我有用?
- 我下楼了
- 我在 Safari 中观看了视频
- 我又试了一次,成功了
- 然后我又试了一次,成功了
- 我又试了一次,还是不行
- 我又播放了一个视频
- 还是不行
- 我强行放弃一切
- 然后成功了
- 然后它没有
- 然后我意识到我没有关闭浏览器标签页
- 然后成功了
我认为有一个错误(iOS11)
关于ios - 文本转语音 API 不适用于 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37959294/