Bovenstaande melding geeft aan hoe lang het nog duurt tot het kerstfeest van 2022. Het aantal dagen wordt berekend met behulp van een stukje JavaScript, dat hier wordt behandeld.
De code staat aan het einde van deze bladzijde. Je kunt hem ook downloaden.
- De code moet worden aangepast. Het gaat om de volgende zaken:
- De datum in regel:
var date = new Date('December 25, 2022');
- De beschrijving van de gebeurtenis in de regel:
var description = 'kerstfeest 2022';
- De begin-tags voor de tekstopmaak in de regel:
var begintags = '<div align="center"><h3>';
- De end-tags van de tekstopmaak in de regel:
var endtags = '</h3></div>';
- De datum in regel:
- Verander alleen de strings tussen de 'enkele aanhalingstekens'!
- De werking van het script is als volgt:
- Eerst wordt een datum-variabele now gemaakt. Daarin staat de datum van vandaag.
- Het verschil tussen date en now wordt bepaald in milliseconden (getTime().
- Hieruit wordt het aantal dagen berekend. Dit wordt opgeslagen in de variabele days. Er wordt daarbij afgerond naar beneden. Daarom wordt er 1 bij opgeteld.
- Nu worden de begin-tags uitgeschreven met document.write.
- Vervolgens wordt aan de hand van de waarde van days een melding gekozen die op het scherm wordt gezet.
Als de datum als gepasseerd is wordt dat netjes gemeld, samen met hoe lang het al is geleden. - Tenslotte worden de end tags uitgeschreven.
Dit is een bewerking van een script dat ik vond op de site www.javascriptsource.com, (voorheen javascript.internet.com). Dit script is daar niet meer beschikbaar.
Gebruik:
- De code staat in de <BODY> op de plaats waar je de melding wilt hebben.
- Zaken als tekstkleur, lettergrootte, enz., leg je vast in het script, als je wilt dat die anders zijn dan wat staat ingesteld.
<script>
/* Countdown-script door Ben Boukes naar een idee van Alan Palmer,
http://www.jsr.communitech.net
<!-- The original script and many more are available free online at -->
<!-- The JavaScript Source!! https://javascriptsource.com -->
*/
// Onderstaande datum invoeren met Engelse notatie!
var date = new Date('December 25, 2022');
var description = 'kerstfeest 2022';
// Opmaak van de melding
var begintags = '<div align="center"><h3>';
var endtags = '</h3></div>';
// Hieronder niets veranderen
var now = new Date();
var diff = date.getTime() - now.getTime();
var days = Math.floor(diff / (1000 * 60 * 60 * 24))+1;
document.write(begintags);
if (days > 2) {
document.write('Nog ' + days + ' dagen tot ' + description);
} else if (days == 2) {
document.write('Nog twee dagen tot ' + description);
} else if (days == 1) {
document.write('Morgen is het ' + description);
} else if (days == 0) {
document.write('Vandaag is het ' + description + '!');
} else if (days == -1){ // Evenement is reeds gepasseerd
document.write('Gisteren was het ' + description + '!');
} else { // Evenement is reeds gepasseerd
document.write(description + ' is reeds '+ Math.abs(days) + ' dagen voorbij')
}
document.write(endtags);
</script>