VBScript – Dinamička promena osobina HTML dokumenata

U sledećem primeru videćemo kako možemo da dinamički menjamo osobine .html dokumenta, i to bez ponovnog učitavanja dokumenta u browser. U primeru ćemo da pomoću par dugmića menjamo osobinu boje teksta, pozadine i boju linkova. Sam programski kod nije težak, ni veliki, a pokazaće vam mnogo toga što VBScript može. Sledećim kodom ćemo na stranicu postaviti pet dugmića, koji će na klik, menjati boju određenih elemenata stranice.


<INPUT TYPE="Button" NAME="cmdDokBeli"
VALUE="Dokument – Beli"><BR>
<INPUT TYPE="Button" NAME="cmdDocCrni"
VALUE="Dokument – Crni"><BR>
<INPUT TYPE="Button" NAME="cmdTeksPlav"
VALUE="Tekst – Plav"><BR>
<INPUT TYPE="Button" NAME="cmdTekstCrven"
VALUE="Text – Crven"><BR>
<INPUT TYPE="Button" NAME="cmdTekstCrn"
VALUE="Text – Crn"><BR>

Prethodni dugmići su standardni HTML tagovi. Sledeći skript kod smestite u „HEAD“ tag stranice:


<SCRIPT LANGUAGE="VBScript">
Function Boja(Crvena, Zelena, Plava)
Dim c, z, p
If Len(Hex(Crvena)) < 2 Then
c = "0" & Hex(Crvena)
Else
c = Hex(Crvena)
End If
If Len(Hex(Zelena)) < 2 Then
z = "0" & Hex(Zelena)
Else
z = Hex(Zelena)
End If
If Len(Hex(Plava)) < 2 Then
p = "0" & Hex(Plava)
Else
p = Hex(Plava)
End If
Boja = c & z & p
End Function

Sub cmdDokBeli_OnClick()
Document.BGColor = Boja(255,255,255)
End Sub

Sub cmdDocCrni_OnClick()
Document.BGColor = Boja(0,0,0)
End Sub

Sub cmdTeksPlav_OnClick()
Document.FGColor = Boja(0,0,255)
End Sub

Sub cmdTekstCrven_OnClick()
Document.FGColor = Boja(255,0,0)
End Sub

Sub cmdTekstCrn_OnClick()
Document.FGColor = Boja(0,0,0)
End Sub
</SCRIPT>


Šta se ovde dešava? Pa ništa posebno, na stranici imamo dugmiće na čiji klik se „okida“ – „OnClick“ događaj, a u programskom kodu ovog događaja se elementima stranice: tekstu (FGColor) ili pozadini (BGColor) dodeljuje nova boja, pozivom funkcije „Boja“. Na žalost, heksadecimalne vrednosti VBScript-a se razlikuju od načina na koji Internet Explorer interpretira boje, zato u osnovi i postoji ova funkcija (Boja) koja u stvari prevodi heksadecimalni kod boja.

Pratite Krstaricu na www.krstarica.com