我无法使语音识别工作。 这可能是一些愚蠢的错误。它不断返回undefined。 我一直在浏览stackoverflow上的帖子并盯着代码几个小时.. 有人可以帮我发现我的错误吗?
<script>
var SpeechRecognition = SpeechRecognition || webkitSpeechRecognition
var SpeechRecognitionEvent = SpeechRecognitionEvent || webkitSpeechRecognitionEvent
var ordnummer = 0;
var saetning = document.getElementById("content").innerHTML;
var saetning_laengde = saetning.split(" ").length;
console.log(saetning);
console.log(saetning_laengde);
var ord = [ 'Jeg' , 'hedder' , 'Ib'];
var grammar = '#JSGF V1.0; grammar ord; public <ord> = ' + ord.join(' | ') + ' ;'
var recognition = new SpeechRecognition();
recognition.lang = 'da-DK';
recognition.interimResults = false;
recognition.maxAlternatives = 1;
var diagnostic = document.querySelector('.output');
var bg = document.querySelector('html');
var hints = document.querySelector('.hints');
hints.innerHTML = 'Tap/click og læs derefter sætningen.';
document.body.onclick = function() {
recognition.start();
console.log('Parat');
}
recognition.onresult = function(event) {
var last = event.results.length - 1;
var sagt = event.results[0].transcript;
diagnostic.textContent = 'Result received: ' + event.results[0].transcript + '.';
console.log(event.results[0].transcript);
console.log('Confidence: ' + event.results[0][0].confidence);
if(saetning==sagt){
ordnummer= ordnummmer + 1;
console.log('Korrekt');
} else { console.log('Forkert'); }
}
recognition.onspeechend = function() {
recognition.stop();
}
recognition.onnomatch = function(event) {
diagnostic.textContent = "Det forstod jeg ikke.. Prøv igen!";
}
recognition.onerror = function(event) {
diagnostic.textContent = 'Error occurred in recognition: ' + event.error;
}
</script>