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

171
Vistas
¿Cómo se puede reproducir automáticamente el video actual de la pestaña de acordeón del carrusel usando la biblioteca de flickity y las pestañas de acordeón de arranque?

Estoy trabajando en controles deslizantes de carrusel ubicados en pestañas de acordeón usando bootstrap 5 y flickity. Tengo siete pestañas de acordeón. Cada pestaña de acordeón contiene un control deslizante de carrusel con videos de reproducción automática. funciona muy bien el video de reproducción automática en el primer carrusel de acordeón, pero solo funciona en la primera pestaña de acordeón, no sé cómo hacer que funcione en las demás pestañas de acordeón, estaba pensando en crear una matriz de identificación pero esta idea no funcionó , también intenté usar document.querySelectAll() con todas las identificaciones de las pestañas, pero tampoco funcionó. El script para hacer que el primer acordeón de pestañas funcione con carrusel es este.

 (function(){ const target1 = document.getElementById('flickity1'); const videos = target1.getElementsByTagName('video'); const videosLength = videos.length;

//inicia el primer video en el carrusel

 videos[0].play(); const flickity = new Flickity(target1,{ wrapAround:false, autoPlay:false, on: { ready: function() { console.log('Flickity ready'); videos[0].play(); } } }); flickity.on('settle',changeSlide); function changeSlide(index) { for(let i = 0;i < videosLength; i++){ videos[i].currentTime = 0; videos[index].play(); } } }());

Una solución que encontré es repetir para los diferentes ID el mismo script pero cambiando la variable de nombre, por ejemplo, const target2 = document.getElementById('flickity2'); y así sucesivamente... Pero esta no es la forma correcta de hacerlo. Creo que una matriz puede funcionar. algo como esto:

 var ids = ['flickity0', 'flickity1']; function accorcarousel() { for (var i = 0; i<ids.length; i++){ document.getElementById(ids[i]) = target1;}}

Estaba leyendo los documentos de arranque que puedo activar la función a través de atributos de datos. data-bs-toggle="collapse" y data-bs-target al elemento para asignar automáticamente el control de uno o más elementos colapsables. Cualquier idea es muy apreciada.

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