2009-05-31 1 views
0

Was ich will ist, dass, wenn der Timer das Ende-Datum und die Zeit erreicht hat es automatisch neu beginnt, aber durch Herunterzählen von 60 Sekunden. Ich bin neu zu jQuery und ich streichelte mit diesem Problem für fast 3 Tage und ich kann es nicht laufen. Mein Countdown funktioniert perfekt mit den Enddaten, die aus der Datenbank eingefügt wurden, aber wenn das Enddatum und die Endzeit erreicht sind (zB 0 Tage 0 Stunden 0 Minuten 0 Sekunden), sollte es von 60 Sekunden auf Null herunter zählen.Auto-Neustart/Reset-Countdown-Timer

Kann jemand bitte mit diesem Problem helfen? Hier unten eine Ruhe meines Codes im Einsatz. Ich verwende es in Kombination mit PHP, so wird es auch die divs für die Countdowns erstellt.

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 

So sind die Teile des Codes oben funktioniert gut. Jetzt sollte es nur neu gestartet werden, wenn das Enddatum erreicht wurde. Also meine Frage ist, wie kann ich das Stück Code implementieren, um zu realisieren, was ich will Todo, oder welche Funktion von Jquery ich verwenden und hinzufügen sollte? Vielleicht hat jemand einen Code bekommen, der sowas schon macht und ihn teilen will?

Bitte kann mir jemand helfen? Wenn ich nicht klar genug war, bitte ich um eine bessere Erklärung.

Vielen Dank im Voraus.

Antwort

2

Verwenden Sie das JQuery Countdown Plugin.

Es verfügt über Callback-Ereignisse, die ausgelöst werden können, wenn der Timer auf Null geht. Wenn dies geschieht, setzen Sie einfach den Timer zurück.

dies Unter der Annahme, unsere html:

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

Dies ist in etwa die JQuery Sie den Countdown-Timer zurücksetzen müssen würde.

+0

Danke für die schnelle Antwort. Ich benutze bereits das jquery countdown plugin. Dieses Skript habe ich schon versucht. Aber ich kenne den Befehl nicht und finde es nirgendwo im Internet, wie man den Timer automatisch startet oder automatisch startet, ohne auf irgendeinen Knopf zu klicken. Lass es mich besser erklären, hoffe ich. Nehmen wir an, wenn wir den Startknopf vom obigen Skript weghalten, ohne die Klickfunktion, welchen Befehl sollten wir verwenden, damit der Timer automatisch zurückgesetzt wird? –

+0

Und nicht nur zurückgesetzt werden, sondern auch wieder herunterzählen –

+0

Das war wirklich hilfreich..danke. – stackoverflowuser

0

Ich habe Ihren obigen Code erneut untersucht (diesmal etwas besser) ... und mein Neustart, wenn Null erreicht ist, funktioniert! Jaaaahhh. Müssen einige andere Sachen im Code anpassen, aber mein Hauptziel ist erreicht ... Vielen Dank, das hilft mir wirklich, jQuery ein bisschen besser zu verstehen. In Basic ist es einfach, aber zuerst muss das Basic verstanden werden :)

Vielen Dank!