Avatar billede flash-man Nybegynder
23. april 2002 - 21:26 Der er 8 kommentarer og
1 løsning

Gør et layer synligt...?

Hvordan fortæller jeg <div name="menu" style="visibility:hidden;"> at det skal blive synligt igen ved brug af JavaScript..

Linket der skal fortælle at <div>-tagget skal blive synligt hedder <a onMouseOver="vismenu()" href="java script:void(0);">Vis Menu</a>

Det jeg undrer er hvordan ser funktionen ud..

</FlashMan!>
Avatar billede nikolajdu Nybegynder
23. april 2002 - 21:29 #1
Hvad med den her:

<html>
<head>
    <title>Untitled</title>     
<script language="javascript">   
ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
ie5 =(document.getElementById)? true:false
ns6 = (document.getElementById && !document.all)?true:false;

function over(id){
var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "visible";
}

function ud(id){
var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "hidden";
}

</script>
</head>

<body>
<a href="#" onMouseover="over('lag')" onMouseout="ud('lag')">kuk</a>

<div id="lag" name="lag" style="position: absolute; left:50; top:50; width: 200; height:100; z-index: 3; visibility: hidden">Denne tekst vises n&aring;r der klikkes</div>

</body>
</html>

/Nikolaj
Avatar billede nute Nybegynder
23. april 2002 - 21:30 #2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<STYLE TYPE="text/css">

#divOne {position:absolute;left:100px;top:125px;visibility:hidden;clip:rect(0,125,25,0); background-color:#ffffff; layer-background-color:#ffffff;}
#divTwo {position:absolute;left:120px;top:150px;visibility:hidden;clip:rect(0,125,25,0); background-color:#ffffff; layer-background-color:#ffffff;}
#divThree {position:absolute;left:130px;top:175px;visibility:hidden;clip:rect(0,125,25,0); background-color:#ffffff; layer-background-color:#ffffff;}
#divFour {position:absolute;left:140px;top:200px;visibility:hidden;clip:rect(0,125,25,0); background-color:#ffffff; layer-background-color:#ffffff;}

</STYLE>

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">

<!--
var ns, ns6, ie;

ns  = (document.layers) ? true : false;
ns6 = (document.getElementById) ? true : false;
ie  = (document.all) ? true : false;

function showLayer( layer ){
  if( ns ){
        document.layers[layer].visibility = "visible";
    } else  if( ie ){
      document.all[ layer ].style.visibility = "visible";
    } else if( ns6 ){
      document.getElementById(layer).style.visibility = "visible";
    }
}

function hideLayer( layer ){
  if( ns ){
        document.layers[layer].visibility = "hidden";
    } else  if( ie ){
      document.all[ layer ].style.visibility = "hidden";
    } else if( ns6 ){
      document.getElementById(layer).style.visibility = "hidden";
    }
}

//-->
</SCRIPT>
<body>

<a href="java script:void(null);" onMouseOver="showLayer('divOne');" onMouseOut="hideLayer('divOne');">Show/hide 'divOne'</a>&nbsp;
<a href="java script:void(null);" onMouseOver="showLayer('divTwo');" onMouseOut="hideLayer('divTwo');">Show/hide 'divTwo'</a>&nbsp;
<a href="java script:void(null);" onMouseOver="showLayer('divThree');" onMouseOut="hideLayer('divThree');">Show/hide 'divThree'</a>&nbsp;
<a href="java script:void(null);" onMouseOver="showLayer('divFour');" onMouseOut="hideLayer('divFour');">Show/hide 'divFour'</a>
<div name="divOne" id="divOne">Insett din tekst her</div>
<div name="divTwo" id="divTwo">Insett din tekst her</div>
<div name="divThree" id="divThree">Insett din tekst her</div>
<div name="divFour" id="divFour">Insett din tekst her</div>

</body>
</html>
Avatar billede flash-man Nybegynder
23. april 2002 - 21:31 #3
Hvis det er dem nemmeste måde... Tjekker lige om det virker...
Avatar billede nute Nybegynder
23. april 2002 - 21:31 #4
nei !!! for fanden nikolajdu !!!! er du nå der igjen ???

GRRR !!

;-)
Avatar billede nikolajdu Nybegynder
24. april 2002 - 01:15 #5
Uha nu skal vi vel ikke igen til at slås om hvis "show-hid-layer" version der er bedst ;-)
Avatar billede =maddog= Nybegynder
24. april 2002 - 02:47 #6
jeg blander mig også lige med min version. (gnæk)
i <script> i <head> :
function show(id,bool) {
vis = (bool)? 'visible': 'hidden';
obj = (document.all)?document.all[id]:(document.layers)?document.layers[id]:(document.getElementById)?document.getElementById(id):""
if (document.layers) obj.visibility = vis;
else obj.style.visibility = vis;
}
og ellers
<div id='mydiv' style="position:absolute;top:100"> Tralallulaja </div>
<a href=# onmouseover="show('mydiv',true);" onmouseout="show('mydiv',false);"> vis/gem sjover </a>
Avatar billede =maddog= Nybegynder
24. april 2002 - 02:56 #7
uuh nikolajdu gamle sjover selvfølgelig
function show(id,bool) {
vis = (bool)? 'visible': 'hidden';
objStyle = (document.all)?document.all[id].style:(document.layers)?document.layers[id]:(document.getElementById)?document.getElementById(id).style:new Object();
objStyle.visibility = vis;
}
sparer en linje kode. jamen du milde. og new Object() for at undgå null pointer snavs i maskinen. jeg dukker ned under min sten igen.
Avatar billede flash-man Nybegynder
24. april 2002 - 07:57 #8
Ok... jeg valgt at bruge nikolajdu's forslag, da det så ud som det nemmeste når man lige kiggede på det.. Så derfor går pointene osse til ham =)
Avatar billede nikolajdu Nybegynder
24. april 2002 - 10:06 #9
flash-man - Tak for point.

Maddog - Det er altid lækkert med flere løsninger :))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester