2011-09-24 4 views
0

안녕하세요, 저는 5 가지 질문에 사용자를 퀴즈로 쓴 다음 자바 스크립트 코드를 작성하여 이론 점수를 산출합니다. 질문에 점수를 매기고 있다고 말할 수있는 한, 응답을 출력하는 방법을 알 수 없습니다. 올바른 HTML 요소를 가져 와서 표시하는 데 문제가 없습니다. 문제는 window.onload 함수의 루핑 요소에 있다고 생각합니다. 코드는 아래와 같습니다.자바 스크립트 퀴즈 스크립트 득점

<script type="text/javascript"> 
var rand = 0; 
var right = 0; 
window.onload = function() { 
    reset(); 
    Rrand(); 
    var rangQ = document.getElementById('area').getElementsByClassName('divide'); 
    correct = document.getElementsByTagName('a'), i = 0; 
    for (i; i < correct.length; i++) { 
     if (correct[i].className == 'correct') { 
      correct[i].onclick = function() { 
       right++; 
       reset(); 
       Rrand(); 
      } 
     } 
     else if (correct[i].className != 'correct') { 
      correct[i].onclick = function() { 
       right--; 
       reset(); 
       Rrand(); 
      } 
     } 
    } 
} 
function Rrand() { 
    var rangQ = document.getElementById('area').getElementsByClassName('divide'); 
    rangQ[rand].style.display = ''; 
    rand++; 
} 
function reset() { 
    var rangQ = document.getElementById('area').getElementsByClassName('divide'); 
    for (var i = 0; i < rangQ.length; i++) { 
     rangQ[i].style.display = 'none'; 
    } 
} 
document.write(right); 
</script> 
+0

이 정말 질문에 대답하지 않는 가장이 될 것입니다 다른 방법을 찾아,하지만에 대한 'else if' 조건은'else {'else''if 'else if' 조건은'if' 조건과 다른 모든 것을 포함하기 때문에 가능합니다. – pimvdb

답변

0

window.onload가 실행되지 않습니다. 당신은 출력을 쓰고 있지만, 그 후에는 변수의 오른쪽이 바뀝니다. 당신은 창로드로 마지막 줄에 이동 라인

document.write(right); 

중 하나에 필요 (또는 루프 후) 또는