1
resposta

Forçar a parar audio anterior ao clicar novamente

Me incomoda eu clicar e não fazer nada pois o som do anterior ainda está tocando... Para quem, assim como eu, acha ruim ter que esperar o som acabar para clicar em outro, fiz um código que permite cancelar o audio anterior e começar o novo, deixando a cargo do usuário escutar.

Criei uma contante que identifica o tipo 'audio' e coloquei comando para pausar e resetar, não sei se é o melhor código, mas funcionou para o que eu queria.

const pausaAudios = document.querySelectorAll('audio');
  pausaAudios.forEach((audio) => {
    audio.pause();
    audio.currentTime = 0;
  })
1 resposta

Oii Padula, tudo bem?

A solução que você propôs é bastante eficaz para garantir que todos os áudios sejam pausados e reiniciados ao clicar em um novo áudio.

Seu código tá correto para o que você deseja alcançar. Ele seleciona todos os elementos de áudio e, para cada um, pausa o áudio e redefine seu tempo para o início. Isso garante que ao clicar em um novo áudio, os anteriores não continuarão tocando.

Muito obrigada por compartilhar com a gente.

Um abraço e bons estudos.