Det script vi nu ska titta p� visar hur man kan d�lja och visa lager.
L�gg m�rke till att du �ndrar attributen visibility med v�rdet
hidden (osynlig) och visible (synlig).
I Netscape ska det egentligen vara show och hide,
fast eftersom Netscape �ven accepterar hidden och visible
s� kan man alltid anv�nda dessa v�rden, b�de f�r Explorer och Netscape.
Exempel 9 - Lager visas/d�ljs
<SCRIPT LANGUAGE="JavaScript">
<!--This is one of many scripts which are available at: *---
//--http://www.JavaScript.nu/javascript *---
//--This script is FREE, but you MUST let these lines *---
//--remain if you use this script. *---
function visa_dolj(namn,varde)
{
if (document.all)
{
document.all[namn].style.visibility=varde; //Explorer 4,5 har denna hierarki
}
else if (document.layers)
{
document.layers[namn].visibility=varde; //Netscape 4 har denna hierarki
}
else if (document.getElementById)
{
document.getElementById(namn).style.visibility=varde; //Netscape 6 har denna hierarki
}
}
//-->
</SCRIPT>
Titta p� mina pengar! Du kan b�da
<A HREF="javascript:visa_dolj('magicmoney','hidden')">d�lja</A>
och
<A HREF="javascript:visa_dolj('magicmoney','visible')">visa</A>
dem.
<BR>
<DIV ID="magicmoney"><IMG SRC="pengar.gif"></DIV>
En annan mycket anv�ndbar funktion med DHTML �r att du kan skriva information till dina lager,
dvs du kan �ndra vad som ska finnas i dina lager. Exemplet nedan inneh�ller ett lager med
en fr�ga. Trycker man p� fr�gan s� kommer svaret p� fr�gan upp.
Fr�gan har allts� ersatts av svaret.
Exempel 10 - �ndra ett lagers inneh�ll
<SCRIPT LANGUAGE="JavaScript">
<!--This is one of many scripts which are available at: *---
//--http://www.JavaScript.nu/javascript *---
//--This script is FREE, but you MUST let these lines *---
//--remain if you use this script. *---
function andra_innehall(txt) //�ndrar texten
{
if (document.all)
{
document.all["tallager"].innerHTML=txt; //Explorer har denna hierarki
}
else if (document.layers)
{
document["tallager"].document.open();
document["tallager"].document.write(txt); //Netscape 4 har denna hierarki
document["tallager"].document.close();
}
else if (document.getElementById)
{
document.getElementById("tallager").innerHTML=txt; //Netscape 6 har denna hierarki
}
}
//-->
</SCRIPT>
<DIV ID="tallager" STYLE="position:absolute"><A STYLE="text-decoration: none" HREF="javascript:andra_innehall('Svar: 25')">Vad �r 5<SUP>2</SUP></A></DIV>
Om du vill kan du g�ra s� att ett lager endast visar information i en viss del av lagret.
H�r har vi ett lager med en massa text, fast bara en del av texten visas -
det som visas genom "h�let" som vi gjort i lagret:
Exempel 11 - H�l i lagret
<DIV ID="textblock" STYLE="position:absolute; background-color:lightgreen; clip: rect(10,75,50,10)">
Hejsan hej p� er alla.
<BR>
Jag vet att du inte kan se hela denna text,
<BR>
s� jag antar att det �r ganska on�digt
<BR>
att forts�tta skriva nu.
</DIV>
background-color:lightgreen g�r s� att lagret blir gr�nt,
anledningen till att jag har det i detta exempel �r att du l�ttare
ska se vart h�let finns.
Det viktiga i detta exempel �r dock att detta lager har
clip: rect(10,75,50,10) i STYLE-attributen.
Det detta g�r �r helt enkelt en rektangel som visar det som
finns i lagret, det �vriga som ej �r bakom detta h�l visas inte alls.
Definitionen: clip: rect(a,b,c,d)
�vre v�nstra h�rnet befinner sig a pix ner�t och d pix �t h�ger r�knat fr�n �vre v�nstra h�rnet p� lagret.
Nedre h�gre h�rnet befinner sig c pix ner�t och b pix �t h�ger r�knat fr�n �vre v�nstra h�rnet p� lagret.
Om hela lagret �r fr�n pixlarna
(0,0) till (10,10)
(egentligen kan det vara hur stort som helst, jag tar
(10,10)
som exempel f�r att det ska �verensst�mma med bilden) s� skulle man kunna ha
n�got av f�ljande h�l i lagret:
clip: rect(2,5,4,3)
...Eller varf�r inte...
clip: rect(8,8,9,3)