Avatar billede aerobee Nybegynder
07. maj 2009 - 10:16 Der er 1 kommentar og
1 løsning

Javascript tree menu. Kun 1 åben af gangen

Hej gutter.
Sidder med et lille problem som jeg nu har kæmpet med i et godt stykke tid.

Jeg har en tree menu, som egentlig fungere som den skal. Dog vil jeg gerne implementere endnu en funktion - som jeg ikke helt kan lure hvordan gøres.

Se scriptet live her:
http://www.suncodes.com/tree.php

JS fil findes her:
http://www.suncodes.com/treemenu.js

Det jeg gerne vil opnå er følgende.
Når man fx klikker på "Downloads" så åbner den. Klikker man så på en af de andre menupunkter skal downloads lukke.

Konklusion.
Kun 1 menu må være foldet ud af gangen. Dvs åbnes et menupunkt skal den lukke alle dem der allerede er åbne.

Ah ja, håber jeg forklarede mig ordentligt.
Avatar billede tjens Nybegynder
07. maj 2009 - 13:32 #1
Du skal ændre i treemenu.js funktion "click" så menuen gennemlæses for åbne poster:

    this.click = function(id) {
        e1 = document.getElementById(id + "-section");
        e2 = document.getElementById(id);
        if (e1.style.display == "none") {
            var sections = document.getElementsByTagName("li");
            for ( var i = 0; i<sections.length;i++) {
                if  (sections[i].className == "section-open") {
                    var e1b = document.getElementById(sections[i].id + "-section");
                    e1b.style.display = "none";
                    sections[i].className = "section";
                }
            }
            e1.style.display = "block";
            e2.className = "section-open";
        } else {
            e1.style.display = "none";
            e2.className = "section";
        }
    }
Avatar billede aerobee Nybegynder
07. maj 2009 - 14:52 #2
Det virker jo perfekt.
Resultatet ligger online så du kan se det hvis det er.

Mange tak for hjælpen tjens
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