Я использую этот простой код в Кордове:Кордова/PhoneGap IOS Safari и синтез речи не будет работать
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);
Так на самом деле говорить(); возвращает эту ошибку в консоли: Speech initialization error: 2147483665
, а затем приложение выглядит разбитым/frezzed, и я ничего не могу сделать на странице.
Это странно синтез речи выглядит поддерживается на КСН http://caniuse.com/#search=speech
Что случилось и почему я не могу говорить(); если я запускаю щелчок на кнопке?
NB: Я проверяю на Ios тренажере с прошивкой 7/8
'function talk()' необходимо создать за пределами eventlistener –
@DawsonLoudon Я получаю ту же ошибку и в консоли, если я перехожу к функции разговора вне deviceready listner :( – sbaaaang