Willekeurig gekozen spreuk
Bij elk bezoek een andere spreuk op je site zoals hieronder. Dat kan zijn als welkomstboodschap of "gewoon" zomaar. Op deze plaats wordt besproken hoe je zoiets kunt aanpakken met behulp van JavaScript.
De code staat onderaan deze pagina. Je kunt hem ook downloaden.
- De code bestaat uit twee stukken JavaScript, te weten: Een lijst met spreuken waaruit gekozen wordt en de function ToonSpreuk() die daar willekeurig één uitkiest en die op het scherm zet.
- De spreuken staan in de array spreuk. Deze is van onbepaalde lengte. Je kunt er dus gewoon nieuwe spreuken aan toevoegen of spreuken weghalen of veranderen. Zorg er wel voor dat er geen gaten in de nummering ontstaan om te voorkomen dat ToonSpreuk() vastloopt.
- De array spreuk staat in de file spreuken.js.
- De function ToonSpreuk() werkt als volgt:
- Eerst wordt de lengte van de array spreuk (= aantal spreuken) bepaald.
- Vervolgens wordt een spreuk-nummer gekozen: 0 ≤ nr < aantal.
Daarvoor wordt gedaan met de code:nr = Math.floor(Math.random()*aantal)
- De gekozen spreuk wordt met document.write op het scherm gezet.
- Op de plaats waar de de spreuk wilt hebben roep je ToonSpreuk() aan. De opmaak van de tekst moet je zelf regelen in HTML. Op deze pagina is dat gedaan met een style-class, tekst centrering en "horizontal rules".
Gebruik:
- De code staat voor een deel in de <HEAD> en voor een deel in de <BODY>.
De code ziet er als volgt uit:
(Zet dit JavaScript bij voorkeur in de <HEAD>)
<script src="spreuken.js">(Zet dit JavaScript bij voorkeur in de <HEAD>)
</script>
<script>
/*
Random spreuken generator (c) 2002 Ben Boukes
Mag vrij worden gebruikt, mits dit commentaar niet wordt verwijderd
Spreuken staan in array 'spreuk', zie bijv. file spreuken.js
*/
function ToonSpreuk() {
var aantal = spreuk.length;
var nr = Math.floor(Math.random()*aantal);
document.write(spreuk[nr]);
}
</script>
(Zet deze code in de <BODY>, op de plaats waar de spreuk moet komen)
<script>
ToonSpreuk();
</script>
Downloaden:
Druk op de knop:
File: voorb053.zip, 1571 bytes.
Opmerking:
Zie ook het item "Spreuk van de dag".