HTML dynamisch wijzigen

Hieronder zie je een tekst staan: het woord Midden. Als je er met de muis op klikt verandert deze in een andere tekst. Als je er weer op klikt wordt het een plaatje. Ook de opmaak verandert steeds.

Midden

Dit soort zaken bereik je met behulp van de eigenschap innerHTML van het object document. Op deze bladzijde staan een paar voorbeelden beschreven van hoe je dat zou kunnen gebruiken op je eigen website.
De mogelijkheden die je met innerHTML hebt zijn heel uitgebreid. De beschrijving op deze bladzijde is echter maar heel summier.
De code staat onderaan deze bladzijde. Je kunt hem downloaden als startpunt om zelf mee aan de slag te gaan.

Een tweede voorbeeld:
Hieronder staat een tekst-invoerveld. Alles wat er er in typt wordt op de regel eronder direct getoond:


Je hebt de volgende tekst getypt:

Het tekstveld heeft de event-handler onKeyUp. Als er een karakter wordt ingetypt en de toets wordt losgelaten, wordt de innerHTML op de volgende regel bijgewerkt.
Hier zijn <span>-tags gebruikt om de dynamische tekst van een id te voorzien. Dat werkt goed als je de aanpassingen in één regel wilt zetten.
In de praktijk kun je alle tags gebruiken die het attribuut id hebben. Pas op voor zij-effecten. Vooral met formulieren kun je hele rare bijverschijnselen veroorzaken.

Gebruik:

De code ziet er als volgt uit: (Eerste voorbeeld)
 
(Zet dit in de <HEAD>).

<script>
var theNumberOfLines = 3;
var TheHTML = Array(theNumberOfLines); // Add as many lines as you need.
TheHTML[0] = '';
TheHTML[1] = '<div align="left"><h3><i>Links</i></h3></div>'; // HTML-code
TheHTML[2] = '<div align="right"><img src="../images/pijl_r.gif" alt="" width="80" height="53" hspace="5" border="0" style="float:right"></div>';
var index = -1;
function Verander() {
  if (index == -1) {
    TheHTML[0] = document.getElementById("my_html").innerHTML;
  index++;
  }
  index++; if (index >= theNumberOfLines) index = 0;
  document.getElementById("my_html").innerHTML = TheHTML[index];
}
</script>
(Zet dit in de <BODY>).
<div id="my_html" style="position:relative;cursor:help"
  onClick="Verander()">
  <div align="center" class="KopB">Midden</div>
</div>

De code ziet er als volgt uit: (Tweede voorbeeld)
 
(Dit staat in de <BODY>).

<div align="center">
<form name="formulier" id="formulier">
<input type="text" name="tekst_in" id="tekstveld" size="50" maxlength="250" onKeyUp="document.getElementById('tekst_uit').innerHTML = document.formulier.tekst_in.value"><br>
Je hebt de volgende tekst getypt: <b><span id="tekst_uit"></span></b>
</form></div>

Downloaden:
 
Druk op de knop: Download deze code  File: voorb157.zip, 795 bytes.

 
terug

html-157; Laatste wijziging: 27 april 2020