我正在寫一個JavaScript應用程序,它應該是一個快節奏的打字挑戰。問題是我的腳本正在檢查輸入是否會在輸入任何內容之前崩潰瀏覽器。我認爲它會暫停等待輸入,但似乎我可能是錯的?在輸入輸入之前瀏覽器崩潰
這裏是崩潰我的瀏覽器功能:
var level1 = function() {
var letter;
var ascii;
var ncorrect = 0;
var input = "0";
var timedout = false;
document.getElementById('prompt').text = "Level 1 : Type Here!" // this is supposed to change text on the page... It doesn't work but not that's not my question.
while (ncorrect < 26){
timedout = false;
setTimeout(timedout = true, 5000);
ascii = Math.floor(Math.random() * 122) + 97; // ASCII's of lower case letters
letter = String.fromCharCode(ascii);
document.getElementById('letter').text = letter;
input = document.getElementById('keyinput');
console.log(input);
if(!timedout && input === letter) {
clearTimeout();
ncorrect++;
}
else {
ncorrect = 0;
}
}
return 0;
}
如果它不是一個簡單的解決... 什麼是監控輸入和響應一個正確答案的一個更好的辦法?
謝謝,我知道這是一個有點廣泛的問題,但我努力弄清楚我在找什麼。
擺脫_while_,沒有理由,它會導致你的崩潰。你還需要傳遞setTimeout程序,而不是表達式。 – dandavis 2015-02-08 02:33:44