gpt4 book ai didi

mobile - SpeechSynthesisUtterance 在移动浏览器中不起作用

转载 作者:行者123 更新时间:2023-12-01 03:43:52 25 4
gpt4 key购买 nike

我在我的移动网站中使用 SpeechSynthesisUtterance。当我在桌面版网站中使用此代码时,它是可以的。但我发现该功能在 document.ready 中的移动浏览器中不起作用,如下所示:

 $(document).ready(function(){
var text_tts="say something";
speakText(text_tts);
});
function speakText(text_tts){
var u = new SpeechSynthesisUtterance();
u.text = text_tts;
u.lang = 'en-US';
u.rate = 1;
u.onend = function(event) { console.log('Finished in ' + event.elapsedTime + ' seconds.'); }
speechSynthesis.speak(u);

}

但是当我使用“点击”事件时,它会起作用:
$("body").on("click",".button",function(){
var tmp_body_text="say something";
var u = new SpeechSynthesisUtterance();
u.text = tmp_body_text;
u.lang = 'en-US';
u.rate = 1;
//u.onend = function(event) { console.log('Finished in ' + event.elapsedTime + ' seconds.'); }
speechSynthesis.speak(u);
});

请帮忙。谢谢你。

最佳答案

我见过几次提到(例如 this ) speak仅在从用户交互(例如单击)调用时才有效。据我所见,iOS 上的 Safari 似乎就是这种情况,这似乎就是您在问题中所描述的。

我实际上还没有找到任何证实这种行为的文档,并且希望任何人都可以提供任何引用。

关于mobile - SpeechSynthesisUtterance 在移动浏览器中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28806399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com