jQuery: 如何在淡入新元素后刷新 DOM?

jQuery: how to refresh DOM after fading in new elements?

我想做一个小调查。我希望用户必须回答一些问题。单击答案后,一个新问题逐渐出现。但这只有效一次,因为我认为 display:hidden 之前的新问题不在 DOM 中。所以我需要刷新我认为的DOM?

这是一个例子:http://jsfiddle.net/x2yu6tvw/

qstnNo = $('.question').data('id');

$('.answer').on( 'click', function(){
    $('.question[data-id="' + qstnNo + '"]').fadeOut(800, function(){
        nextQstn = qstnNo+1; 
        $('.question[data-id="' + nextQstn + '"]').delay(300).fadeIn(300);

    });
});

我该怎么做 jQuery 还要听新添加的元素?

这是工作 demo

JS

$('.answer').on( 'click', function(){
    qstnNo = $(this).parent('div').data('id');
    $('.question[data-id="' + qstnNo + '"]').fadeOut(800, function(){
        nextQstn = qstnNo+1; 
        $('.question[data-id="' + nextQstn + '"]').delay(300).fadeIn(300);

    });
});

问题:qstnNo 值在您的案例中不正确。那应该是动态的,不是固定的。