Todas as atividades
Quiz e Avaliação
Preencher Lacunas (Texto Livre)
Apresenta um texto com palavras removidas que o aprendiz completa digitando, sem opções à escolha. Avalia evocação ativa do termo, precisão terminológica e compreensão contextual.
Conhecimento e compreensão
lacuna
texto livre
digitação
vocabulário
Experimente
Complete as lacunas com os termos corretos:
A avaliação
ocorre durante o processo de aprendizagem, enquanto a avaliação
ocorre ao final de uma etapa.
Sua resposta
Resposta esperada
Explicação
Código-fonte
PHP
Texto e lacunas
Intercala campos de resposta com os segmentos da frase.
| 1 |
<?php // Exemplo didático: a tentativa permanece no campo após a avaliação. ?>
|
| 2 |
<div class="questao" data-tipo="preencher-lacunas-texto-livre">
|
| 3 |
<p class="instrucao"><?= t($q->instrucao) ?></p>
|
| 4 |
|
| 5 |
<?php foreach ($q->segmentos as $segmento): ?>
|
| 6 |
<?php if ($segmento->tipo === 'texto'): ?>
|
| 7 |
<span><?= t($segmento->valor) ?></span>
|
| 8 |
<?php else: ?>
|
| 9 |
<input class="lacuna-input" data-resposta="<?= sanitizar(t($segmento->resposta)) ?>">
|
| 10 |
<?php endif; ?>
|
| 11 |
<?php endforeach; ?>
|
| 12 |
|
| 13 |
<?php include VIEWS_PATH . 'components/ui/area-feedback.php'; ?>
|
| 14 |
</div>
|
CSS
Estados das lacunas
Mantém acerto e erro legíveis depois da avaliação.
| 1 |
.lacuna-input[data-estado="correta"] {
|
| 2 |
border-color: #16a34a;
|
| 3 |
color: #15803d;
|
| 4 |
opacity: 1;
|
| 5 |
}
|
| 6 |
|
| 7 |
.dark .lacuna-input[data-estado="correta"] {
|
| 8 |
border-color: #22c55e;
|
| 9 |
color: #86efac;
|
| 10 |
}
|
| 11 |
|
| 12 |
.lacuna-input[data-estado="errada"] { border-color: #dc2626; color: #b91c1c; }
|
| 13 |
.lacuna-input:disabled { opacity: 1; }
|
JavaScript
Avaliar as lacunas
Preserva tentativas, compara respostas e declara o estado visual.
| 1 |
document.addEventListener('DOMContentLoaded', function () {
|
| 2 |
var campos = document.querySelectorAll('.lacuna-input');
|
| 3 |
var feedback = document.querySelector('.questao-feedback');
|
| 4 |
|
| 5 |
document.querySelector('.lacunas-verificar').addEventListener('click', function () {
|
| 6 |
var tentativas = [], respostas = [], acertos = 0;
|
| 7 |
campos.forEach(function (campo) {
|
| 8 |
var correta = campo.value.trim().toLowerCase() === campo.dataset.resposta.toLowerCase();
|
| 9 |
campo.dataset.estado = correta ? 'correta' : 'errada';
|
| 10 |
campo.disabled = true;
|
| 11 |
tentativas.push(campo.value || '(em branco)');
|
| 12 |
respostas.push(campo.dataset.resposta);
|
| 13 |
if (correta) acertos++;
|
| 14 |
});
|
| 15 |
|
| 16 |
Feedback[acertos === campos.length ? 'correto' : 'parcial'](feedback, 'Confira o resultado.');
|
| 17 |
Feedback.definirTentativa(feedback, tentativas.join('\n'));
|
| 18 |
Feedback.definirResposta(feedback, respostas.join('\n'));
|
| 19 |
});
|
| 20 |
});
|