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

139
Vistas
Carrusel automático con manipulación Dom

Quiero cambiar el orden de mis divs secundarios en el div principal, cada 2 segundos sin interacciones (girar solo si la página está cargada:

El primer hijo debe pasar al tercer hijo, el segundo hijo debe pasar al primer hijo y el tercer hijo debe pasar al segundo hijo

El segundo y tercer hijo siempre deben tener la clase "pequeño" y cuando lleguen a la posición del primer hijo deben eliminarse.

HTML

 <div class="inner-testimonial"> <div class="slide"> <h4>Copy here</h4> </div> <div class="slide small"> <h4>Copy here</h4> </div> <div class="slide small"> <h4>Copy here</h4> </div> </div>

JQuery

 $(".inner-testimonial .slide:nth-child(1)").removeClass('small'); $(".inner-testimonial .slide:nth-child(2)").addClass('small'); $(".inner-testimonial .slide:nth-child(3)").addClass('small');

¿Cómo puedo hacer esto?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Puedes hacerlo así:

  1. Eliminar clase pequeña para todas las diapositivas con removeClass()
  2. Establecer diferentes var con cada posición de diapositivas
  3. Establecer el contenedor de diapositivas vacío con vacío ()
  4. Agregue diapositivas en el orden correcto con append()
  5. Y luego agregue todo esto dentro de un setInterval() llamado cada 2 segundos.

El orden del primer cambio será: 2 3 1
El orden del segundo cambio será: 3 1 2
Y luego el orden volverá a su punto inicial: 1 2 3

Gracias por validar y votar mi respuesta si hace lo que esperas.

 setInterval(function () { // remove small class for all slides $('.inner-testimonial .slide').removeClass("small"); // set different var with each slides positions var firstEl = $('.inner-testimonial .slide:first'); var secondEl = $('.inner-testimonial .slide:first').next(); var thirdEl = $('.inner-testimonial .slide:last'); // set slides container empty $('.inner-testimonial').empty(); // append slides in right order : secondEl + thirdEl + firstEl $('.inner-testimonial').append(secondEl); $('.inner-testimonial').append($(thirdEl).addClass("small")); $('.inner-testimonial').append($(firstEl).addClass("small")); }, 2000);
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="inner-testimonial"> <div id="first"></div> <div class="slide"> <h4>First</h4> </div> <div class="slide small"> <h4>Second</h4> </div> <div class="slide small"> <h4>Third</h4> </div> </div> <div id="test"></div>

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