Alguém pode me dar uma Luz???? Já tentei de tudo dentro do que sei, mas mesmo assim não funciona, reduziu os erros no console mas funcionar que é bom nada. Alguma dica? Segue o código:
Amigo Secreto
<script>
let nomes = [];
document.addEventListener("DOMContentLoaded", function () {
document.getElementById('btnAdicionar').addEventListener('click', adicionarNome);
document.getElementById('btnSortear').addEventListener('click', sortearAmigos);
});
function adicionarNome() {
const nomeInput = document.getElementById('nome');
const nome = nomeInput.value.trim();
if (nome === '') {
alert('Por favor, digite um nome válido.');
return;
}
nomes.push(nome);
nomeInput.value = '';
atualizarLista();
}
function atualizarLista() {
const lista = document.getElementById('listaNomes');
lista.innerHTML = '';
nomes.forEach(nome => {
const li = document.createElement('li');
li.textContent = nome;
lista.appendChild(li);
});
}
function sortearAmigos() {
if (nomes.length < 2) {
alert('Adicione ao menos dois nomes antes de sortear!');
return;
}
const embaralhar = (array) => {
for (let i = array.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[array[i], array[j]] = [array[j], array[i]];
}
};
const sorteados = [...nomes];
embaralhar(sorteados);
let resultadoHTML = '<h2>Resultado do Sorteio:</h2><ul>';
for (let i = 0; i < nomes.length; i++) {
const amigo = sorteados[i];
resultadoHTML += `<li>${nomes[i]} -> ${amigo}</li>`;
}
resultadoHTML += '</ul>';
document.getElementById('resultado').innerHTML = resultadoHTML;
}
</script>
Agradeço de coração!!!