Я ' m в процессе создания простого веб-приложения, которое позволяет пользователю задавать вопросы по математическим задачам. Пользователь сначала выбирает тип задачи, которую он хотел бы решить, а затем, сколько задач он хотел бы решить.
Поскольку пользователь сталкивается с проблемами, я хотел бы определить время, которое потребуется для решения каждой проблемы. Это код, который отображает проблемы на странице:
function displayMult ($i)
{
echo '<table class="basic">';
for($k=0; $k < $i; ++$k) // display problems
{
$user_response[$k] = 'user_response' . $k ;
echo '<tr>';
echo '<td>' . number_format($_SESSION['mult_one'][$k]) . '</td>';
echo '<td>'. ' x ' . '</td>';
echo '<td>' . number_format($_SESSION['mult_two'][$k]) . '</td>';
echo '<td>' . ' = <input type="text" class="field" name="user_response' . $k . '"' . 'id="u_r' . $k . '" />' . '</td>';
echo '<td id="timer_' . $k . '">test</td>';
echo '</tr>';
}
echo '</table>';
}
И это jQuery, который у меня есть, который учитывает ответы пользователя. Проблема, с которой я столкнулся, заключается в том, что 1) я не могу понять, как писать, чтобы всегда выбирать правильный идентификатор таймера для передачи в функцию секундомера и 2) остановить старый таймер и начать новый. Текущий код будет определять время только для первого вопроса, а затем правильно останавливать таймер, когда пользователь щелкает поле ввода для следующего вопроса.
$(document).ready(function() {
$('.field').focus(stopwatch('#timer_0'));
});
function stopwatch(container) {
var interval;
return function() {
if (interval) {
clearInterval(interval);
}
else{
var count = 0;
interval = setInterval(function() {
count++;
$(container).html(count + ' seconds');
}, 1000);
}
};
}
I ' m новичок в jquery, поэтому мы будем благодарны за любую помощь и понимание! Заранее спасибо.