Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

184
Visualizações
El video silenciado no se reproduce automáticamente cuando se inserta en HTML a través de Javascript

Estoy tratando de insertar un elemento HTML5 <video> a través de Javascript, pero no se reproduce automáticamente a pesar de que está silenciado .

Contexto de fondo

Me gustaría transferir todos mis archivos gif a un formato mp4. De igual forma, me gustaría que el video HTML emule un gif. Debe incluir las siguientes propiedades:

  • ser silenciado
  • Se reproduce automáticamente tan pronto como se carga la página web
  • Bucle indefinidamente
  • juega en linea

Actualmente estoy en Chrome 100.

lo que he probado

El código relevante se mantiene dentro de este codepen . Quiero agregar el video HTML dinámicamente a través de javascript. Sin embargo, esto falla en la reproducción automática a pesar de que se especifican tanto la reproducción automática como los atributos silenciados.

Sin embargo, si tengo el elemento de video con los mismos atributos escritos directamente en mi HTML, la funcionalidad de reproducción automática funciona bien.


¿Cómo inserto el video con JS y hago que se reproduzca automáticamente?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Creo que podrías establecer atributos como este:

 const anchor = document.querySelector('#anchor'); const vid = document.createElement('video'); anchor.appendChild(vid); vid.autoplay = true; vid.loop = true; vid.muted = true; vid.playsinline = true; vid.src = 'https://www.w3schools.com/html/mov_bbb.mp4';

Intenta hacer estas modificaciones. Si aún no funciona, puede agregar esto en línea después del código anterior:

 vid.play()
about 4 years ago · Juan Pablo Isaza Relatório

0

Parece que Chrome está ignorando el conjunto de atributos muted antes de que se carguen los medios. El video se reproduce automáticamente si el atributo muted se establece cuando los medios se cargan y se pueden reproducir, lo que se puede verificar con el detector de eventos canplay .

 vid.oncanplay = () => { vid.muted = true; vid.play(); }

Con esto, puede ignorar la configuración de la autoplay y los atributos muted inicialmente.

 const anchor = document.querySelector('#anchor'); const vid = document.createElement('video'); vid.setAttribute('loop', ''); vid.setAttribute('src', 'https://www.w3schools.com/html/mov_bbb.mp4'); vid.oncanplay = () => { vid.muted = true; vid.play(); } anchor.appendChild(vid);
 body { background-color: black; color: white; }
 <div id="anchor"></div>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda