U bent hier:

  1. Handleiding
  2. Ontwikkeling
  3. Client-side script en DOM
  4. Document Object Model

Client-side script en DOM: Document Object Model

De Document Object Model (DOM) Level 1 is een standaard voor het beschrijven van de hiërarchie van XML en HTML elementen in het geheugen van de computer. Het is vergelijkbaar met een boommodel. DOM geeft scripttalen de mogelijkheid deze elementen te manipuleren.

DOM is opgezet als een platform- en scriptonafhankelijke API (Application Programming Interface): een toegang voor scripts en programmeertalen voor het manipuleren van documenten. De DOM kan worden gebruikt door server-side scripts en programma’s die met XML te maken hebben.

Van origine is een HTML-bestand in het geheugen van de browser niet meer dan een lange rij karakters, een string. DOM beschrijft markup op een andere manier: als zelfstandige objecten (elementen) met eigenschappen (attributen). Niet alleen HTML- en XML-elementen en attributen worden zo beschreven, ook de tekst binnen de elementen bestaat uit aparte objecten. Client-side scripts kunnen worden gebruikt om deze objecten aan te spreken en te manipuleren.

Uit het platform- en scriptonafhankelijke karakter van DOM blijkt het doel ervan: uitwisselbaarheid. DOM maakt het mogelijk dat programma’s op een eenduidige manier markup aanspreken en manipuleren.

DOM en DHTML

DHTML (Dynamic HTML) is een niet-officiële verzamelterm voor visuele effecten door middel van client-side scripts, CSS en HTML. Het benaderen van met name het HTML-gedeelte (de structuur van de pagina-inhoud) kan op verschillende manieren en DOM is er daar één van. DOM gaat echter verder dan visuele effecten.

  • DOM biedt scripttalen eenvoudig toegang tot individuele elementen en attributen
  • Via DOM kunnen hele secties inhoud efficiënt worden verplaatst naar een andere locatie binnen de structuur van het document
  • Via DOM kunnen nieuwe elementen worden gecreëerd op willekeurige plaatsen in de structuur van het document

DOM kan worden toegepast voor visuele effecten, maar heeft vooral zijn nut in het zonder herladen aanpassen van pagina-inhoud aan de handelingen van de bezoeker. Zo kan een formulier reageren op de invoer van de bezoeker en bepaalde vragen tonen of weglaten. De mogelijkheden voor webapplicaties, zoals een CMS (Content Management Systeem) zijn eindeloos.

DOM-ondersteuning door browsers

Ondersteuning voor de DOM is iets van de afgelopen jaren. Moderne versies van webbrowsers bieden steeds betere ondersteuning, maar op veel punten is deze nog inconsistent of niet volledig.


 Webrichtlijnen versie 1.3, november 2007.