webForumDet fria alternativet

Visa/göm lager.

7 svar · 170 visningar · startad av SilvioF

SilvioFMedlem sedan juni 2000547 inlägg
#1

Om jag har följande lager,

<div id="deltagarna" name="deltagarna" style="position:absolute; left:395px; top:75px; width:346px; height:275px; z-index:1; background-color: #86ab72; layer-background-color: #86ab72; border: 1px none #000000; visibility: hidden">deltagarna</div>

och vill visa gömma detta genom att trycka påä en knapp/länk, hur skriver jag då.

Kanske skulle ta och sätt amig ner med Javascript någon gång. börjar bli lite tröttsamt att alltid vända sig hit när man behöver lite hjälp. ;-)

------------------
~~~~~~~~~~~~~~~~~~~~
Silvio Fumei
silvio@fumei.net
www.fumei.net
~~~~~~~~~~~~~~~~~~~~

RezaMedlem sedan feb. 2001107 inlägg
#2

Börja med att skriva in detta i <HEAD>:

<script language="javascript">
	function lager(namn,egenskap)
	{
	document.all [namn].style.visibility=egenskap
	}
	</script>

Skriv sedan detta i <BODY>:

<a onmouseover="lager('deltagarna','visible')" onmouseout="lager('deltagarna','hidden')">Visa/Göm lager</a>

Nu visas lagern när musen är över texten och göms när musen inte är över texten.
OBS: detta script fungerar bara med IE.
För NE skriver du:

document.layers.deltagarna.visibility="show"

------------------
Reza K

SilvioFMedlem sedan juni 2000547 inlägg
#3

Tackar för det snabba svaret.

Nu ska jag bara få allting att funka i NS också. få se om jag har fattat saker med lager rätt nu.

I IE så deklarerar jag mitt lager med en <div>, detta funkar tydligen inte i NS (varken 4.7 eller 6). Är det <layer> som skall användas då eller? Och måste jag i så fall skriva olika kod för lagren som gäller för varje läsare? T.ex

IE:
<div id="lager" style="position:absolute; left:395px; top:75px; width:346px; height:275px; z-index:1; border: 1px none #000000; visibility: hidden">Text</div>
--------------------------------
NS:
<layer id="lager" style="position:absolute; left:395px; top:75px; width:346px; height:275px; z-index:1; border: 1px none #000000; visibility: hidden">Text</layer>

Eller hur funkar lager i NS egentligen. Det verkar vara lite lättare i IE med JScript i alla fall, men man vill ju helst att sidorna skall fuka i båda läsarna. :-)

------------------
~~~~~~~~~~~~~~~~~~~~
Silvio Fumei
silvio@fumei.net
www.fumei.net
~~~~~~~~~~~~~~~~~~~~

RezaMedlem sedan feb. 2001107 inlägg
#4

<Div> är ok att använda i både IE och NE, det går att använda <Layer> men då fungerar det bara med NE.
Men värdet på ”egenskapen” visibility skiljer sig åt i de båda läsarna, då IE använder ”hidden” och ”visible” men NE använder ”hide” och ”show”.
Så länge det inte finns en standard får man tyvärr skriva dubbla koder, och det gör man enklast genom att använda sig av IF.

<script language="javascript">

ne = (document.layers) 
ie = (document.all)

function visalager(namn)
{
if (ne) document.layers [namn].visibility=”show”
else if (ie) document.all [namn].style.visibility=”visible”
}
</script>

På samma sätt gör du när du ska ”gömma” lagerna, fast då skriver man ”hide” och ”hiden”

if (ne) document.layers [namn].visibility=”hide”
else if (ie) document.all [namn].style.visibility=”hidden”

Lycka till !

------------------
Reza K

SilvioFMedlem sedan juni 2000547 inlägg
#5

Tackar och bockar. Skall genast sätta mig och koda.

------------------
~~~~~~~~~~~~~~~~~~~~
Silvio Fumei
silvio@fumei.net
www.fumei.net
~~~~~~~~~~~~~~~~~~~~

SilvioFMedlem sedan juni 2000547 inlägg
#6

Hmm... Märkte precis en sak. Netscape 6 gillar tydligen inte den här koden. Eller har den ett annat sätt att hantera layers på än vanliga NS?

------------------
~~~~~~~~~~~~~~~~~~~~
Silvio Fumei
silvio@fumei.net
www.fumei.net
~~~~~~~~~~~~~~~~~~~~

RezaMedlem sedan feb. 2001107 inlägg
#7

Hmm.. det borde fungera.
Prova med:

ne = (document.layers)? true:false
ie = (document.all)? true:false

Och avsluta satsera med:

;

------------------
Reza K

SilvioFMedlem sedan juni 2000547 inlägg
#8

Letade lite på nätet och hittade till slut felet.

NN 6 använder tydligen inte document.layer utan document.getElementById istället. Har fått det att funka nu i alla fall.
Tack för hjälpen.

------------------
~~~~~~~~~~~~~~~~~~~~
Silvio Fumei
silvio@fumei.net
www.fumei.net
~~~~~~~~~~~~~~~~~~~~

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)