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

126
Visualizações
Substring todos los elementos de etiqueta aria de una matriz

HTML

 <div role="group" class="swiper-slide w-dyn-item" aria-label="1 / 13" <div role="group" class="swiper-slide w-dyn-item" aria-label="2 / 13" <div role="group" class="swiper-slide w-dyn-item swiper-slide-prev" aria-label="3 / 13" <div role="group" class="swiper-slide w-dyn-item swiper-slide-active" aria-label="4 / 13" <div role="group" class="swiper-slide w-dyn-item swiper-slide-next" aria-label="5 / 13" <div role="group" class="swiper-slide w-dyn-item" aria-label="6 / 13"

Aquí tengo un script JS que funciona para obtener el número de la diapositiva activa como resultado de una variable. para obtenerlo, tengo información de subcadena de "aria-label" (manteniendo solo el número de diapositiva antes de "/ 13") de la diapositiva activa:

 var activeslide = $('.swiper-slide-active').attr('aria-label'); activeslide = activeslide.substring(0, activeslide.indexOf(" ")) var numactiveslide = parseInt(activeslide); numactiveslide = numactiveslide - 1; players[(numactiveslide)].play();

resultado // numactiveslide: "4"

** Cómo obtener lo mismo no para 1 sino para 3 diapositivas especiales (anterior, activa, siguiente). Trato de obtener lo mismo, trabajando para una nueva matriz de 3 diapositivas activas (swiper-slide-prev, swiper-slide-active y swiper-slide-next).

Esta es la var de las diapositivas seleccionadas:

 var **activeslides** = $('.swiper-slide-prev,.swiper-slide-active,.swiper-slide-next');

El resultado esperado son los 3 números de diapositivas activas: // numactiveslides = 3,4,5

¿Cómo hacer que un código funcione escribiendo un bucle o forEach o este tipo de cosas? Esto debería ser fácil, pero no logré repetir la subcadena para cada elemento, para obtener al final una matriz de:

 numactivesslides (3): numactivesslides[0] = 3 numactivesslides[1] = 4 numactivesslides[2] = 5
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

ok, finalmente he encontrado la respuesta. Funciona bien.

 var activeslides; var activslidesnumber = []; var activplyrs = []; var activslidlength; setTimeout(function(){ activeslides = $('.swiper-slide-prev,.swiper-slide-active,.swiper-slide-next'); console.log("actives slides:",activeslides); activslidlength = activeslides.length; console.log('activslidlength ',activslidlength); var arialabel; for (let n = 0; n < activslidlength; n ++) { //get numbers arialabel = activeslides[n].getAttribute('aria-label'); //update to keep only first num before space arialabel = arialabel.substring(0, arialabel.indexOf(" ")); arialabel = parseInt(arialabel); // put each arialabels on this var list activslidesnumber.push(arialabel); // fit fist slide to first player activplyrs.push(arialabel - 1); }; console.log("actives slides num:",activslidesnumber); console.log('activplyrs ',activplyrs) // THEN IF NEEDED, PLAY PLYR ON ACTIVE SLIDES if (activplyrs[2] == undefined) { covplayers[(activplyrs[0])].play(); covplayers[(activplyrs[1])].play(); } else { covplayers[(activplyrs[0])].play(); covplayers[(activplyrs[1])].play(); covplayers[(activplyrs[2])].play(); }, 200);

//entonces haz lo mismo para las diapositivas pasivas con covplayers.pause();

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