Webmaster

DHTML : Aangepaste pop-upvakken
Inhoud ]
Dr Benton

Het informatievak weergeven

We hoeven nu alleen nog maar te zorgen dat het informatievak wordt weergegeven als de muis op de afbeelding wordt geplaatst. Dat gebeurt met de pop-functie die vanuit de verschillende cellen van de tabel wordt aangeroepen.

29: function pop(texte,fond)
30: {
31:
32: var contenu ="<TABLE WIDTH=200 BORDER=0 CELLPADDING=1 CELLSPACING=0 BGCOLOR=#352F7F><TR><TD><TABLE WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0><TR><TD><CENTER><FONT FACE='ARIAL' COLOR=#FFFFFF SIZE=2><B>Info box...</B></FONT></CENTER></TD></TR></TABLE><TABLE WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 BGCOLOR="+fond+"><TR><TD><FONT COLOR=#000000 SIZE=1 face=Verdana><CENTER>"+texte+"</TD></TR></TABLE></TD></TR></TABLE>";
33:
34:   if (ns)
35:   {
36:     skn.document.write(contenu);
37:     skn.document.close();
38:     skn.visibility = "visible";
39:   }
40:     else if (ie)
41:   {
42:     document.all("topdeck").innerHTML = contenu;
43:     skn.visibility = "visible";  
44:   }
45: }

We maken eerst op regel 32 de variabele contenu, waarin de HTML-code wordt opgeslagen waarmee het bijschrift wordt weergegeven (die in de variabele texte staat die eerder is gedefinieerd) tegen de opgegeven achtergrondkleur (die in de variabele fond staat).

Vervolgens moeten we dynamisch de HTML-code in de laag topdeck schrijven.

  • Met Netscape is dat heel eenvoudig: met skn.document.write(contenu) wordt de HTML-code uit de variabele in de laag gezet waarnaar wordt verwezen met skn.

  • Voor Internet Explorer moeten we de eigenschap innerHTML van het doellaagobject wijzigen: met document.all("topdeck").innerHTML = contenu wordt de HTML-code uit de variabele op de laag geschreven waarnaar wordt verwezen met topdeck.

De laag verbergen. Let op de instructie skn.document.close() op regel 37. Deze is noodzakelijk voor Netscape. Als je deze instructie zou weglaten, zouden bij het aanroepen van pop() de gemaakte regels worden toegevoegd aan de eerder weergegeven code. Er zouden dan twee, daarna vier, en vervolgens een enorm aantal informatievakken achter elkaar worden weergegeven.



  1   2   3   4   5   6   7