Vārdu sakot uzdevums ir tāds, ka lapā ir daudz taimeru, kuru sākuma vērtības norāda PHP skripts, notiek laika atskaite, zem katra taimera ir poga... nospiežot pogu, ar ajax datubāzē tiek palielināts laiks par noteiktu intervālu un atjaunots taimeris...
problēma ir tāda, ka taimeris neatjaunojas, datubāzē man viss pareizi ierakstās, bet kad vēlreiz palaižu taimeri, tas turpina atskaitīt laiku no momenta, pirms pogas nospiešanas... pārlādējot lapu taimeris atkal rāda pareizo laiku...
Question
J-EX
Sveiki!
Vārdu sakot uzdevums ir tāds, ka lapā ir daudz taimeru, kuru sākuma vērtības norāda PHP skripts, notiek laika atskaite, zem katra taimera ir poga... nospiežot pogu, ar ajax datubāzē tiek palielināts laiks par noteiktu intervālu un atjaunots taimeris...
problēma ir tāda, ka taimeris neatjaunojas, datubāzē man viss pareizi ierakstās, bet kad vēlreiz palaižu taimeri, tas turpina atskaitīt laiku no momenta, pirms pogas nospiešanas... pārlādējot lapu taimeris atkal rāda pareizo laiku...
Rekur būs kods
function countdown(hour, minute, secunde, num)
{
Time_Left = secunde + (minute*60) + (hour*3600);
if(Time_Left < 0) Time_Left = 0;
//More datailed.
hours = Math.floor(Time_Left / 3600);
Time_Left %= (3600);
minutes = Math.floor(Time_Left / 60);
Time_Left %= 60;
seconds = Time_Left;
/////// liekam klaat nulles
if(minutes<10) minutes = '0'+minutes;
if(seconds<10) seconds = '0'+seconds;
///////////////////////////
document.getElementById("countdown"+num).innerHTML = hours + ' : ';
document.getElementById("countdown"+num).innerHTML += minutes + ' : ';
document.getElementById("countdown"+num).innerHTML += seconds;
Time_Left--;
hours = Math.floor(Time_Left / 3600);
Time_Left %= (3600);
minutes = Math.floor(Time_Left / 60);
Time_Left %= 60;
seconds = Time_Left;
//Recursive call, keeps the clock ticking.
setTimeout('countdown(' + hours + ',' + minutes + ',' + seconds +',' + num + ');', 1000);
}
Link to comment
Share on other sites
6 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.