1
resposta

[Dúvida] para limpar a tela anterior

eu escrevi esse codigo e minha intenção era que sempre que a função fosse chamada ela limpasse o conteudo e iniciasse do zero. no entando nao funciona. quando chamo a função com outra lista ela retorna o valor em baixo, e nao apaga o conteudo anterior. Algume pode me ajudar

function constroiCard(titulo, url, descricao, imagem){
   const  video = document.createElement('li')
    video.innerHTML=''
    video.className = 'videos__item'
    video.innerHTML = `<iframe width="100%" height="72%" src="${url}"
    title="YouTube video player" frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
    allowfullscreen></iframe>
<div class="descricao-video">
    <img src="${imagem}">
    <h3>${titulo}</h3>
    <p>${descricao}</p>
</div>`

return video}
1 resposta

Olá! O problema está no trecho: video.innerHTML=''

note que a constante "video" representa o item que foi criado na linha superior, e não o já existente. Para apagar o conteúdo que já está na página temos que referenciar ele.

Espero ter ajudado e qualquer dúvida é só voltar aqui!