Pregunta

Lo que quiero es que cuando el temporizador ha alcanzado el final de fecha y hora que se inicia automáticamente, sino por una cuenta atrás de 60 segundos. Im nuevo en jQuery y im strungling de este problema durante casi 3 días y no puedo ponerlo en marcha. Mi cuenta regresiva está funcionando perfectamente con los datos-extremo insertado de la base de datos pero cuando llega al final de fecha y hora (por ejemplo: 0 días 0 horas 0 minutos, 0 segundos) que debe empezar por una cuenta atrás de 60 segundos a cero.

Por favor alguien puede ayudar con este problema? A continuación una paz de mi código im utilizando. Im usarlo combina con PHP por lo que también creará los divs utilizados para las cuentas atrás.

JQUERY:

$data = '<script type="text/javascript">
$(function () {';
    foreach( $datarows as $key => $value ) { // start php foreach

    $data .= '
              $(\'#wincountdown'.$datarows[$key]['uid'].'\').countdown({ until: new Date( '. strftime( '%Y,%m - 1,%d,%H,%M',$datarows[$key]['end_bidding']).' ) }) ;
    ';
    } // end php foreach
$data .= '
});
</script>';

HTML

<div id="wincountdown<#nr#>">  </div> //build by db array

Así que las piezas de código anterior está trabajando muy bien. Ahora sólo debe reiniciar automáticamente cuando se ha alcanzado la fecha de finalización. Así que mi pregunta es ¿cómo puedo poner en práctica el fragmento de código para darse cuenta de lo que yo quiero TODO, o cuál es la función de jQuery que debería usar y agregar? Tal vez alguien puso un trozo de código que está haciendo algo por el estilo ya fuiste y desea compartirlo?

Por favor, alguien puede ayudarme? Si yo no era lo suficientemente claro por favor me pregunta para explicar mejor.

Gracias de antemano.

No hay solución correcta

Otros consejos

Utilice el plugin href="http://keith-wood.name/countdown.html" rel="nofollow noreferrer"> jQuery Cuenta atrás

Tiene eventos de devolución de llamada que pueden ser disparados cuando el temporizador llega a cero. Cuando esto sucede, simplemente restablecer y el temporizador.

Si se asume que esta es nuestra html:

<div id="shortly"></div>
<button id="shortlyStart">Start</button>

Esto es aproximadamente el jQuery que había necesidad de restablecer el temporizador de cuenta atrás.

// restart the timer on expiry
$('#shortly').countdown({until: shortly,  
    onExpiry: restart, onTick: watchCountdown}); 

$('#shortlyStart').click(function() { 
    // restart the timer on click
    restart();
}); 

function restart() { 
    shortly = new Date(); 
    shortly.setSeconds(shortly.getSeconds() + 5.5); 
    $('#shortly').countdown('change', {until: shortly}); 
} 

// show the timer results 
function watchCountdown(periods) { 
    $('#monitor').text('Just ' + periods[5] + ' minutes and ' + 
        periods[6] + ' seconds to go'); 
}

Me studyied su código de nuevo (poco mejor esta vez) ... y mi reinicio cuando se llega a cero está trabajando! Yeaaahhh. Tiene que ajustar algunas otras cosas en el código, pero se alcanza mi meta principal ... Muchas gracias, esto me está ayudando a entender jQuery un poco mejor. En básica es simple, pero primero el básico tiene que ser entender :)

Muchas gracias!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top