在quirks部分下的ResponsiveVoice.JS website上指出:
但是,对于我一生来说,我无法绕开这种直接的用户交互要求。 您如何解决这个问题?
这是我目前在<head>
元素中没有用户交互而试图执行的代码片段:
<script src="http://code.responsivevoice.org/responsivevoice.js"></script>
<script type="text/javascript">
function speak_static_data(){
responsiveVoice.speak('Test');
}
setTimeout(function(){ speak_static_data(); }, 3000);
</script>
我想在没有直接用户交互的情况下在iOS中的页面加载时调用
responsiveVoice.speak('Test');
。我该怎么做?相同的代码片段在Android/Safari,台式机/Chrome和台式机上都可以正常运行,但在iOS上却不行。
最佳答案
因此,我一直在寻找并隐藏在他们具有iOS指南的常见问题解答中。他们没有完全规避它,而是在初审后的任何时候都绕过它。
您实际上不需要说任何话,因此只需用户单击一个按钮即可调用响应语音就足够了。
<button onclick="responsiveVoice.speak('');">Enable Voice</button>
响应语音常见问题解答:https://responsivevoice.org/faq/