SpeechSynthesis 在 FireFox 中第一次发声后停止工作,但在 Chrome 中工作
SpeechSynthesis stops working after first utterance in FireFox, but works in Chrome
问题很简单,见JSfiddle。
SpeechSynthesis 在 Chrome 中工作正常,但在 FireFox 中第一次说话后神秘地停止。 (在 Safari 中也适用于我。)欢迎提出任何想法,因为我没有太多可参考的东西。
代码:
var u = new SpeechSynthesisUtterance();
var synth = window.speechSynthesis;
u.text = "hello";
synth.speak(u);
synth.speak(u);
synth.speak(u);
这其实是一个known bug in Firefox.
The specs drafts are still not very clear about the re-usability of an utterance, but you can see this issue 在 w3c 的 github 上,他们同意应该这样做。
目前,一种解决方法是每次都创建一个新话语...
var synth = window.speechSynthesis;
synth.speak(new SpeechSynthesisUtterance('hello'));
synth.speak(new SpeechSynthesisUtterance('hello'));
synth.speak(new SpeechSynthesisUtterance('hello'));
问题很简单,见JSfiddle。
SpeechSynthesis 在 Chrome 中工作正常,但在 FireFox 中第一次说话后神秘地停止。 (在 Safari 中也适用于我。)欢迎提出任何想法,因为我没有太多可参考的东西。
代码:
var u = new SpeechSynthesisUtterance();
var synth = window.speechSynthesis;
u.text = "hello";
synth.speak(u);
synth.speak(u);
synth.speak(u);
这其实是一个known bug in Firefox.
The specs drafts are still not very clear about the re-usability of an utterance, but you can see this issue 在 w3c 的 github 上,他们同意应该这样做。
目前,一种解决方法是每次都创建一个新话语...
var synth = window.speechSynthesis;
synth.speak(new SpeechSynthesisUtterance('hello'));
synth.speak(new SpeechSynthesisUtterance('hello'));
synth.speak(new SpeechSynthesisUtterance('hello'));