Google chrome 简单webkit语音合成测试不起作用

Google chrome 简单webkit语音合成测试不起作用,google-chrome,webkit,undefined,text-to-speech,Google Chrome,Webkit,Undefined,Text To Speech,我正在使用webkit语音合成API,试图让它通过点击按钮从输入框中说出文本,代码如下: if(窗口中的“speechSynthesis”){ log(“浏览器支持语音合成”); }否则{ log(“浏览器不支持语音合成”) } var speechMsgInput=$(“#语音输入”).value; 功能发言(文本){ var msg=newspeechsynthesisutterance(); msg.text=文本; window.speechSynthesis.speak(msg);

我正在使用webkit语音合成API,试图让它通过点击按钮从输入框中说出文本,代码如下:

if(窗口中的“speechSynthesis”){
log(“浏览器支持语音合成”);
}否则{
log(“浏览器不支持语音合成”)
}
var speechMsgInput=$(“#语音输入”).value;
功能发言(文本){
var msg=newspeechsynthesisutterance();
msg.text=文本;
window.speechSynthesis.speak(msg);
}
$(“#speakbtn”).onclick=speak(speechMsgInput)

sujiqdev.0
通话

显然,该文件需要在托管站点上进行测试(而不是远程拖放到浏览器样式中),以便API可以访问internet。这修复了
speechsynthesisterance()
对象的
text
属性“未定义”的问题


在一个托管网站上进行的测试显示了奇怪的输出:女声连续朗读“未定义”、“这行吗?”、“这行吗?”、“这行吗?”、“它到底行得通”、“它到底行得通”—换言之,是我在远程测试中一个接一个地强行分配的样本话语。。。非常奇怪的是,它以某种方式被缓存了…

更不用说您需要使用jQuery中的
val()
方法来调用值,而不是
.value
。。。