Avatar billede fun22 Nybegynder
22. november 2006 - 19:08 Der er 9 kommentarer og
1 løsning

Skjule og vise layer

Hej

Jeg har kigget lidt på de forskellige spørgsmål omkring det at skjule og vise et layer, men jeg kan ikke rigtigt finde noget der passer til det jeg skal bruge det til..

Jeg har 6 layers og det er kun et af dem der må være vist af gangen..

Så det vil sige at når jeg klikke for at vise et andet layer, så skal den selv på en eller anden måde finde ud af hvad for en der bliver vist nu og skjule det, og så vise det andet...

Håber i forstår?
Avatar billede thesurfer Nybegynder
22. november 2006 - 19:36 #1
Brug en for-løkke:

for(i = 0; i < antallet_af_layers; i++)
{
  skjul(layer[i]);
}
vis(layer'et der er blevet klikket);
Avatar billede roenving Novice
23. november 2006 - 01:11 #2
Eller gem den, der sidst blev vist:

<script type="text/javascript">
var oldElm = null;
function visSkjul(elm){
  if(oldElm)
    oldElm.display = "none";
  if(typeof elm == "text")
    elm = document.getElementById(elm);
  oldElm = elm.style;
  oldElm.display = "block";
}
</script>
Avatar billede fun22 Nybegynder
23. november 2006 - 17:00 #3
Jeg kan ikke lige se hvordan jeg skal få det til at virke..

Jeg har 6 layers med følgende id:
Forsiden
Kommunikation
Opslag
Underholdning
Teknologi
Søg

Hvordan gør jeg så sådan at når jeg klikker på forsiden, så bliver kun forsiden vist.. Og hvis så jeg klikker på søg så bliver forsiden skjult og søb bliver vist..

Og det skal gerne virke i både IE of FF..
Avatar billede thesurfer Nybegynder
24. november 2006 - 09:23 #4
Det objekt der skal vises, sendes med kaldet visSkjul(ID_PÅ_LAYER).

Her er et andet eksempel:

<a href="#" onclick="visSkjul('forside');return false">Vis forside</a>
<br>
<a href="#" onclick="visSkjul('kommunikation');return false">Vis kommunikation</a>
<br><br>
<div id="forside">dette er forsiden</div>
<div id="kommunikation">Du er nu på kommunikation</div>
Avatar billede fun22 Nybegynder
24. november 2006 - 12:09 #5
hvis jeg bruger roenving's eks så kommer den med en fejl:
oldelm er null eller ikke et objekt..
Avatar billede fun22 Nybegynder
25. november 2006 - 13:19 #6
Har fået det til at virke sådan her:

<script type="text/javascript">

function visSkjul(elm){
    document.getElementById('forsiden').style.display = "none";
    document.getElementById('kommunikation').style.display = "none";
    document.getElementById('opslag').style.display = "none";
    document.getElementById('underholdning').style.display = "none";
    document.getElementById('teknologi').style.display = "none";
   
    document.getElementById(elm).style.display = "";
}
</script>

visSkjul('opslag')

Smider i et svar?
Avatar billede roenving Novice
27. november 2006 - 02:52 #7
Hvordan får du fejl, når der i koden først spørges på om der findes et element, der hedder oldElm ?-)

-- bemærk bl.a. at der er et stort E i navnet ...
Avatar billede fun22 Nybegynder
14. januar 2007 - 10:37 #8
Lukker..
Avatar billede roenving Novice
14. januar 2007 - 11:13 #9
Fik du klaret problemet ?-)
Avatar billede fun22 Nybegynder
14. januar 2007 - 11:28 #10
ja jeg brugte den kode som jeg skrev 25/11-2006 13:19:58...
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