2013-04-25 5 views
2

기본 JS 기술을 개발하기 위해 간단한 퀴즈를 작성하려고합니다. 'endQuiz'기능을 제외하고는 모두 정상적으로 작동합니다. 일하고있어.조건이 충족되었지만 함수가 호출되지 않음 (기본 JavaScript)

내가 볼 수있는 한 조건은 충족되었지만 'endQuiz'함수가 여전히 호출되지 않고 있습니다.

왜 그런가?

JSFiddle : http://jsfiddle.net/HVLvQ/은 (퀴즈의 끝 얻고 호출하지 않습니다 endQuiz())

여기에 여기에 문

if (qNum === quizLength && isQuestion === false) { 
    endQuiz(); 
} 

와 내가 그 호출 할 함수의 경우입니다 :

function endQuiz() { 
    questionBox.innerHTML = '<h1>Final Score:</h1>'; 
    answerBox.innerHTML = '<h2>' + score + ' out of ' + allQuestions.length + '</h2>'; 
    qNum = 0; 
    score = 0; 
} 
+1

경고 시도(); endQuiz() 전에; ? – Will

+0

endQuiz를 호출해야하는 페이지에서 경고를 실행하면 두 조건이 모두 올바르게 경고됩니다. 따라서 당혹 스럽습니다. –

+0

조건이 충족되고 있음을 어떻게 알 수 있습니까? 윌이 말한 것을 시도해보십시오. – sgroves

답변

0

correctAnswer을 (를) checkAnswer()에 정의되지 않은 위치에서 읽으려고했습니다.

checkAnswer() 함수를 변경하여 질문이 있는지 확인하십시오.

function checkAnswer() { 

    if (allQuestions[qNum] == undefined) { 
     return; 
    } 

    ... 
} 

그리고 작동합니다.

+0

제가 이것을 고쳤습니다. 그게 틀린가요? http://jsfiddle.net/HVLvQ/5 –

+0

좋은 해결책입니다. 문제에 대해 생각하고 자신 만의 방식으로 해결했는지 확인하는 것이 좋습니다. – Bart

관련 문제