OGeek|极客世界-中国程序员成长平台

标题: javascript - Cordova/Phonegap iOS Safari 和语音合成不起作用 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 04:23
标题: javascript - Cordova/Phonegap iOS Safari 和语音合成不起作用

我在cordova中使用了这个简单的代码:

document.addEventListener('deviceready', function () {

    function talk () {
      /*var msg = new SpeechSynthesisUtterance('jee wiz, you are so funny !');
      /*msg.rate = 1; msg.pitch = 5; msg.lang ="en_EN";*/
      /*speechSynthesis.speak(msg);*/
      var u = new SpeechSynthesisUtterance();
      u.text = 'Hello World';
      u.lang = 'en-US';
      u.rate = 1.2;
      u.onend = function(event) { console.log('Finished in ' + event.elapsedTime + ' seconds.'); }
      speechSynthesis.speak(u);
    }
    var element  =  document.getElementById('button');
    element.addEventListener('click', function () {
      talk();
    });
    }, false);

所以实际上talk();在控制台中返回此错误:语音初始化错误:2147483665

然后应用看起来崩溃/卡住,我无法在页面上执行任何操作。

奇怪的是,ios 支持语音合成 http://caniuse.com/#search=speech

出了什么问题以及为什么我无法获得 talk();如果我触发点击按钮?

注意:我正在使用 ios 7/8 的 ios 模拟器上进行测试



Best Answer-推荐答案


iOS 8 模拟器不支持文本转语音。在真机上试一试。

还将您的函数对话移出设备就绪事件监听器。

关于javascript - Cordova/Phonegap iOS Safari 和语音合成不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27696976/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4