Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

100
Vistas
Youtube iFrame API Pasar datos de onYouTubeIframeAPIReady a la función onPlayerStateChange

Debo inicializar la lista de videos iframe de Youtube

Debido a que hay muchos videos de YouTube y la lista se puede cambiar desde el sitio de administración, debo hacerlo dinámico, que usa clase en lugar de identificación.

este es el codigo actual

 const players = []; onYouTubeIframeAPIReady(0); onYouTubeIframeAPIReady(1); function onYouTubeIframeAPIReady(index) { players[index] = new YT.Player($('.wow_youtube_video')[index], { events: { 'onStateChange': onPlayerStateChange } }); } function onPlayerStateChange(event) { // play if(event.data == 1){ action = 'play'; } // pause if(event.data == 2){ action = 'pause'; } if(event.data == 1 || event.data == 2){ dataLayer.push({ 'event': 'trackEvent', 'eventDetails.category': 'videos', 'eventDetails.action': action, 'eventDetails.label': players[0].getVideoData().title // players[0] supposedly be players[index] but don't know how to pass the index balue from above function to this function 'videoName': players[0].getVideoData().title, //video name 'videoType': 'video on demand' //video type }); } }

como puede ver arriba, la octava línea desde abajo

'eventDetails.label': players[0].getVideoData().title,

este código aquí el

players[0] supuestamente son players[index] pero no sé cómo pasar el valor del índice de

 players[index] = new YT.Player($('.wow_youtube_video')[index], { events: { 'onStateChange': onPlayerStateChange } });

a la función onPlayerStateChange

el propósito de esto es poder llevar el valor del índice para que el código pueda ser dinámico, por lo que solo necesito poner el nombre de clase wow_youtube_video en cualquier iframe de youtube para que funcione

Cualquier ayuda se agradece, gracias

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

en la función onYouTubeIframeAPIReady agregar esto

 players[index] = new YT.Player($('.wow_youtube_video')[index], { events: { 'onStateChange': onPlayerStateChange.bind(index) } });

ahora puede obtener index en onPlayerStateChange por

 function onPlayerStateChange(event) { let index = this; console.log(index); }
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda