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

110
Visualizações
jQuery cada ciclo ejecuta la función solo para el último elemento

Estoy haciendo una cuenta regresiva y usando un reloj giratorio. Aquí está el marcado

 <div class="timer-special-offer" data-year="@Model.SpecialOfferModel.DateStart.Value.Year" data-month="@Model.SpecialOfferModel.DateStart.Value.Month" data-day="@Model.SpecialOfferModel.DateStart.Value.Day" data-hour="@Model.SpecialOfferModel.DateStart.Value.Hour" data-minute="@Model.SpecialOfferModel.DateStart.Value.Minute" data-second="@Model.SpecialOfferModel.DateStart.Value.Second" data-year-now="@DateTime.Now.Year" data-month-now="@DateTime.Now.Month" data-day-now="@DateTime.Now.Day" data-hour-now="@DateTime.Now.Hour" data-minute-now="@DateTime.Now.Minute" data-second-now="@DateTime.Now.Second"> <div class="timer-counter"> <div class="counter-inner"></div> </div> </div>

El código Js es algo como esto:

 $(document).ready(function () { $('.timer-special-offer').each(function () { var timer = $('.timer-special-offer'); if (timer.length) { const clock = $('.counter-inner').FlipClock({ clockFace: 'DailyCounter', countdown: true, language: 'ru-ru' }); const targetDate = new Date( parseInt(timer.data('year')), parseInt(timer.data('month')) - 1, parseInt(timer.data('day')), parseInt(timer.data('hour')), parseInt(timer.data('minute')), parseInt(timer.data('second'))); const nowDate = new Date( parseInt(timer.data('yearNow')), parseInt(timer.data('monthNow')) - 1, parseInt(timer.data('dayNow')), parseInt(timer.data('hourNow')), parseInt(timer.data('minuteNow')), parseInt(timer.data('secondNow'))); const time = (targetDate - nowDate) / 1000; clock.setTime(time); clock.start(); } }); });

Hay varios objetos con temporizador en ellos, pero el temporizador está trabajando en el último objeto de la página como si nunca hubiera iterado a través de la oferta especial del temporizador. No puedo entender por qué.

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

0

no está haciendo un bucle en cada elemento, su código está ejecutando un código específico para 2..3.... veces. tienes que cambiar :

 $('.timer-special-offer').each(function (index,element) { var timer = $(element); if (timer.length) { const clock = timer .find('.counter-inner').FlipClock({ clockFace: 'DailyCounter', countdown: true, language: 'ru-ru' }); const targetDate = new Date( parseInt(timer.data('year')), parseInt(timer.data('month')) - 1, parseInt(timer.data('day')), parseInt(timer.data('hour')), parseInt(timer.data('minute')), parseInt(timer.data('second'))); const nowDate = new Date( parseInt(timer.data('yearNow')), parseInt(timer.data('monthNow')) - 1, parseInt(timer.data('dayNow')), parseInt(timer.data('hourNow')), parseInt(timer.data('minuteNow')), parseInt(timer.data('secondNow'))); const time = (targetDate - nowDate) / 1000; clock.setTime(time); clock.start(); } });
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