2015-04-28 74 views
-1

我正在做javascriptissexy的测验。如何显示/更改数组内容?

动态(通过document.getElementById或jQuery的)删除当前问题,并添加下一个问题,当用户点击“下一步”按钮。 “下一步”按钮将是唯一用于导航此测验版本的按钮。

如何删除答案的当前问题+列表和动态显示新的?它现在运行良好,但认为这是要求我从问题的平滑过渡。

function nextQuestion(){ 

    j++; 
    currentQuestion.innerHTML = allQuestions[j].question; 

    for(var i = 0; i < allQuestions[j].choices.length; i++){ 
     currentChoices[i].innerHTML = allQuestions[j].choices[i]; 
    }; 

}; 
+0

表现出一定的HTML –

+0

可以请你有点MOR具体到什么不工作?预期的行为是什么?它有什么作用?还请显示所有相关代码(不是整个页面,但至少需要重现问题的代码)。 –

回答

0

更换内容之前,你一定要躲起来,改变的内容,然后再次表明,它

$("#question").fadeOut("slow", function(){ 
    $("#question_content").html(allQuestions[question].question); 
    for(var i = 1; i <= allQuestions[question].choices.length; i++){ 
      $("#choise"+i).html(allQuestions[question].choices[i-1]); 
    }; 
    $("#question").fadeIn("slow");      
}); 

请查看此示例上的jsfiddle http://jsfiddle.net/en4rt9o7/

+0

正是我在找什么,谢谢。 –

+0

不客气! – vasilenicusor

0

您可以删除使用shift

function nextQuestion() { 
     var question = allQuestions.shift(); 
     currentQuestion.innerHTML = question.question; 
     for (var i = 0; i < question.choices.length; i++) { 
      currentChoices[i].innerHTML = question.choices[i]; 
     }; 
    };