Een goeie dag,
Ik zit met een klein probleempje waarop ik vast loop.
Ik heb een pagina waarop een "wachttijd" verbonden zit.
Dit werkt perfect tijd wordt ook netjes weer gegeven op het scherm.
Alleen zou ik graag willen dat mn stukje Javascript deze tijd netjes terug
laat lopen naar 0 en indien mogelijk de desbetreffende pagina opnieuw laad.
Hieronder zet ik even mn stukje php code neer dat de wachttijd genereerd.
Afgezien de eventuele slordigheid werkt het overigens wel zoals ik had verwacht:
<?php
// tijd wordt vergeleken met "NU" en verschil wordt berekend
$tijdverschil1 = $werken->werken-time() - 1800;
$tijdverschil = date("i:s", "$tijdverschil1");
if($werken->werken + $werken->werken1 > time()){
// Als verschil groter is dan 0 onderste tekst weergeven
?>
Als ik vervolgens $tijdverschil laat echoën krijg ik netjes de tijd in mn scherm.
Mn Javascriptje hieronder zou de variabel van hier boven moeten verwerken maar op de 1 of andere manier wil dat niet goed lukken.
<script type="text/javascript">
(function () {
var tijdverschil = 1800,
eindTijd = (new Date() / 1000) + tijdverschil;
setTimeout(function timer() {
var diff = (eindTijd - (new Date() / 1000)),
hours, minutes, seconds;
if (diff === 0) {
location.reload();
} else {
hours = Math.floor(diff / 3600),
minutes = Math.floor((diff % 3600) / 60),
seconds = Math.floor(diff % 60);
document.getElementById('tijd-teller').value =
((hours > 0 ? hours + ':' : '') + minutes + ':' + seconds).replace(
/^(\d):/,
'0$1:'
).replace(
/:(\d)(?=$|:)/g,
':0$1'
);
setTimeout(timer, 400);
}
}, 400);
}());
</script>
Hieronder staat mn stukje HTML waar de tijd weergegeven moet worden:
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td class="subTitle">Stukje tekst hier<br /></td></tr>
<tr><td>
<input type="text" id="tijd-teller" name="tijd-teller" style="text-align: center;"> </td></tr>
</form>
</table>
Er zal ongetwijfeld iets fout staan maar ik heb geen idee wat....
Javascript is compleet nieuw voor mij.
1.970 views