好的,我有一组14个选择题,一个接一个地出现在显示窗口中。
我看到一些奇怪的行为,最后一个问题被显示两次(一次留下问题13和14,再次离开14后)
以下是我的代码的相关部分。
这是我第一次使用eq()函数,这是我对eq如何工作的理解吗?
根据我的理解,eq()只是为你指向的东西创建一个索引,在这种情况下是一组带有class ="问题"
$(window).load(function() {
$(".intro").appendTo('#display_box');
var question = $(".question");
var questionPosition = -1;
//clears out display window
function clearBox(){
$("#display_box").children().fadeOut(500).appendTo('#question_holding');
};
// cycles through question index
function cycle(){
question.eq(questionPosition).fadeIn(500).appendTo("#display_box");
$("#display_box").animate({scrollTop:0}, 500);
}
$('#leftarrow').on('click', function(){
questionPosition--;
if (questionPosition < -1) {questionPosition = 13};
clearBox();
cycle();
});
$('#rightarrow').on('click', function(){
questionPosition++;
if (questionPosition > 13) { questionPosition = -1};
clearBox();
cycle();
// if all questions are checked, display submit button
if($('input[name^="answer"]:checked').length > 13 ) {
$("#submit").css('display', 'block');
}
});