У меня есть система, в которой есть время для каждого вопроса. На данный момент его 10 секунд. Если ученик не отметит ответ в это время, этот вопрос будет заменен следующим. Если он отметит ответ, он поднимет его на следующий вопрос. Я использую метод setTimeout jquery для первой ситуации, и он работает нормально. Во второй части я не могу решить проблему. В этой ситуации я думаю использовать функцию .change на переключателе. Мой вопрос заключается в том, как мне будет возможно показать следующий вопрос и скрыть текущий ход изменений и сохранить временной интервал для этого вопроса. Время и количество вопросов на самом деле случайны. Может ли кто-нибудь помочь?JQuery setTimout метод триггера при событии изменения
Это то, что я сделал:
$('.main_list').children().hide();
var q_count = $('.main_list').children().length;
$('.main_list').children('.show-questions1').show();
//timerHere();
// time here and countdown are timers that should also be updated when //questions are changed.
//countdown(10, '#qtime');
setInterval(function() {
$('.main_list').children('.show-questions1').hide(500);
}, 60000);
var i = 2;
var et = setInterval(function(){
if(i>2){
$('.main_list').children().hide();
}
$('.main_list').children('.show-questions'+i).show(400);
//timerHere();
//countdown(10, '#qtime');
i= i+1;
if(i>q_count){
clearInterval(et);
}
},60000);
$('.check_question').on('change', function(e) {
var f = $(this).parentsUntil('.options').closest('div').parent().closest('div').attr('class');
if ($('.'+f).next('div').length)
{
$('.'+f).hide(400);
$('.'+f).next().show(500);
//timerHere();
//countdown(10, '#qtime');
i=i+1;
} else {
clearInterval(et);
$('.hide').removeClass('hide');
return false;
}
});
может быть, в следующий раз добавить некоторый код, чтобы мы могли видеть и дайте вам пример – Rickert
"jquery's setTimeout" - jQuery не имеет метода 'setTimeout'. – Quentin
@ Rickert, конечно. –