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

217
Visualizações
¿Por qué el valor de visualización en mi etiqueta de video no se actualiza como se esperaba?

Para un próximo proyecto, estoy empezando a experimentar un poco con video html5. Escribí una pequeña clase para administrar videos.

 const videoLayer = document.getElementById( "videoLayer" ); class videoPlayer { constructor( id, source ){ this.id = id; this.source = source; videoLayer.innerHTML += `<video id="${ this.id }"> <source src="${ this.source }" type="video/mp4"> </video>`; this.element = document.getElementById( this.id ); this.element.onended = () => { this.stop(); } this.hide(); } show(){ this.element.style.display = "inline"; } hide(){ this.element.style.display = "none"; } goToStart(){ this.element.currentTime = 0; } play(){ this.show(); this.element.play(); } pause(){ this.element.pause(); } stop(){ this.pause(); this.hide(); this.goToStart(); } toggle(){ this.show(); this.element.paused ? this.element.play() : this.element.pause(); } }

Con solo una instancia, todo funciona bien. Pero con varias instancias, solo funciona la última instancia. Si uso .play() en la primera instancia, solo comienza a reproducirse el audio. Si observo "inspeccionar elemento", puedo ver que la propiedad de visualización sigue mostrando "ninguno". Lo extraño es que si agrego las siguientes líneas a la consola, todo funciona bien.

 const test = document.getElementById( theRightId ); test.style.display = "inline"; test.play();

Si agrego la línea debajo de la función show, devuelve el elemento correcto en la consola. Sin embargo, allí indica que el valor de visualización es "en línea".

 console.log( this.element );

Así que sospecho que algo está interfiriendo con el valor de visualización después de la ejecución.

Y por último, si cambio el orden de las instancias, todas funcionan siempre que sean la última instancia creada.

¿Algunas ideas?

about 4 years ago · Juan Pablo Isaza
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