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

167
Visualizações
Misma clase pero solo función de activación para la seleccionada

Hola a todos, me está costando entender cómo hacer que esto funcione.

Tengo 8 divs diferentes, cada uno con un img usado como botón y la misma clase (tm-img) y divs ocultos con información adicional. Lo que quiero es haber mostrado solo la imagen al principio y cuando el usuario haga clic en una de las 8 imágenes, dependiendo de la que hizo clic, se muestran los divs ocultos de esa imagen. (Lo que sucede ahora es que si hago clic en una imagen, todos los divs ocultos de todas las imágenes muestran no solo en la que hice clic)

 <div class="tm-full-container"> <div class="team-member card-container blue-card"> <img class='tm-img' onclick='run()' src="/team_1.png" alt=""> <h5 class="tm-title">Chef</h6> <div class="tm-info"> <p class="tm-name">Rick Jones</p> <p class="tm-position">Chef</p> </div> </div> <div class="tm-full-info"> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</p> </div> </div> <script> function run(){ $('.tm-info').toggle(); $('.tm-full-info').toggle(); $('.tm-title').toggle(); }</script>

Los otros 7 divs tienen el mismo aspecto con diferente imagen y nombre (Rick).

Gracias por adelantado.

Ejemplo

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

0

Puede hacer algo como en el siguiente fragmento. Use la palabra clave this para que el elemento en el que se hizo clic no se active.

También puede hacer for bucle se ejecute a través de todas las etiquetas y activar (alternar) el evento en el que se hizo clic

 function funcRun(show) { var showInfo = show.querySelector(".tm-tag-Info"); showInfo.classList.toggle("tm-tag-Info-Show") }
 .tm-tag-Info { display: none } .tm-tag-Info-Show { display: block } .tm-tag { border: 2px solid red; margin: 10px; padding: 10px; } .imageFun { width: 100px; height: 100px }
 <div class="tm-tag" onclick="funcRun(this)"> <h4 class="tm-tag-Hed">CV for BV</h4> <span class="tm-tag-Info"><img alt="imageFun" src="https://www.hdnicewallpapers.com/Walls/Big/Rainbow/Rainbow_on_Mountain_HD_Image.jpg" class="imageFun"><br>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</span> </div> <div class="tm-tag" onclick="funcRun(this)"> <h4 class="tm-tag-Hed">CV for BV</h4> <span class="tm-tag-Info"><img alt="imageFun" src="https://www.hdnicewallpapers.com/Walls/Big/Rainbow/Rainbow_on_Mountain_HD_Image.jpg" class="imageFun"><br>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</span> </div> <div class="tm-tag" onclick="funcRun(this)"> <h4 class="tm-tag-Hed">CV for BV</h4> <span class="tm-tag-Info"><img alt="imageFun" src="https://www.hdnicewallpapers.com/Walls/Big/Rainbow/Rainbow_on_Mountain_HD_Image.jpg" class="imageFun"><br>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</span> </div>

about 4 years ago · Juan Pablo Isaza Relatório

0

Esto podría hacerse usando la palabra clave this: https://www.yogihosting.com/jquery-this/

 .tm-info, .tm-full-info, .tm-title { display: none; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="tm-full-container"> <div class="team-member card-container blue-card"> <img class='tm-img' src="https://via.placeholder.com/150" alt=""> <h5 class="tm-title">Chef</h6> <div class="tm-info"> <p class="tm-name">Rick Jones</p> <p class="tm-position">Chef</p> </div> </div> <div class="tm-full-info"> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</p> </div> </div> <div class="tm-full-container"> <div class="team-member card-container blue-card"> <img class='tm-img' src="https://via.placeholder.com/150" alt=""> <h5 class="tm-title">Chef</h6> <div class="tm-info"> <p class="tm-name">Rick Jones</p> <p class="tm-position">Chef</p> </div> </div> <div class="tm-full-info"> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</p> </div> </div> <script> $('.tm-img').click(function(){ $(this).parent().parent().find('.tm-info').toggle(); $(this).parent().parent().closest('.tm-full-info').toggle(); $(this).parent().parent().closest('.tm-title').toggle(); }); </script>

about 4 years ago · Juan Pablo Isaza Relatório

0

Considera lo siguiente.

 $(function() { function revealFullInfo(event) { var self = $(event.target); var parent = self.closest(".tm-full-container"); $('.tm-info, .tm-full-info, .tm-title', parent).toggle(); } $(".tm-img").click(revealFullInfo); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="tm-full-container"> <div class="team-member card-container blue-card"> <img class='tm-img' src="https://dummyimage.com/100x150/000/fff.png" alt=""> <h5 class="tm-title">Chef</h6> <div class="tm-info"> <p class="tm-name">Rick Jones</p> <p class="tm-position">Chef</p> </div> </div> <div class="tm-full-info"> <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Error magnam aliquam similique at ipsam accusamus sed enim, in non ipsa excepturi reprehenderit fugit velit libero mollitia tempora temporibus perspiciatis? Assumenda?</p> </div> </div>

Todo es cuestión de usar el selector y el visor correctos.

 $('.tm-info, .tm-full-info, .tm-title', parent).toggle();

Esto es lo mismo que:

 parent.find('.tm-info, .tm-full-info, .tm-title').toggle();
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