Avatar billede chuf Nybegynder
17. oktober 2004 - 23:24 Der er 7 kommentarer

Collapse menu

Jeg har fundet et javascript, der kan lave en menu, hvor jeg ved at trykke på et billede (et plus f.eks) kan folde en undermenu ud. I disse submenuer har jeg selvfølgelig links til andre sider. Mit problem er, at jeg gerne vil gemme brugerens valg, så når vedkommende klikker på et link så husker den hvilke undermenuer brugeren har foldet ud.
Selve scriptet er nok for langt at poste, men her ser i hvordan jeg bygger menuen:
<tr id="Book">
  <td class="Menu">&nbsp;</td>
</tr>
         
<tr id="Book.1" title="Book.1" onMouseOver="mOver(this.id);" onMouseOut="mOut(this.id);" onDblClick="Collapse(this.id)" style="DISPLAY: none">
  <td class="Menu"><img id=img.Book.1 style="CURSOR: hand" onclick="Collapse('Book.1')" src="Images/plus.gif" width="7" height="7">Brugere</td>
</tr>
<tr id="Book.1.1" title="Book.1.1" onMouseOver="mOver(this.id);" onMouseOut="mOut(this.id);" onDblClick="Collapse(this.id)" style="DISPLAY: none">
  <td class="Menu2"><a href="tipskuponen.asp">Tipskuponen </a></td>
</tr>

Osv.
Nederst har jeg så det kald til scriptet, der laver selve menuen:
<SCRIPT LANGUAGE=javascript>
  OpenNode('Book');
</SCRIPT>

Jeg ved at, hvis jeg f.eks skriver Collapse('Book.1') i det sidste script, så vil den folde denne menu ud. Men hvordan gemmer jeg valgene?
Håber det er forklaret tydeligt.
Avatar billede roenving Novice
17. oktober 2004 - 23:31 #1
Den nye side kender jo ikke det valg, så du skal på en eller anden måde gøre den næste side opmærksom på det, og lade den folde den aktuelle menu ud ...

Enten ved at sætte det i urlen eller ved at bruge en cookie !-)
Avatar billede chuf Nybegynder
17. oktober 2004 - 23:37 #2
Jeg kender ingenting til Javascript... Der er jo flere undermenuer. Derfor kan jeg ikke bare lave en querystring. Hvis jeg nu åbner to menuer, så kan den jo kun identificere den ene på den måde. Kan man ikke benytte noget som minder om session variable som registreres ved onclick, så den hele tiden er opdateret og kan hentes fra centralt hold?
Avatar billede roenving Novice
17. oktober 2004 - 23:40 #3
-- det er det, jeg kalder cookie-metoden (sessions arbejder også ved hjælp af cookies på brugerens maskine !-)

-- og du kan ganske glimrende bruge en session til at udføre arbejdet, det kræver nok bare lidt ændringer i menu-scriptet ...
Avatar billede chuf Nybegynder
17. oktober 2004 - 23:45 #4
Er det noget du gider kigge på (forstår godt, hvis du ikke har tid/lyst)? Hvis jeg eventuelt mailer dig hele filen med script, menu og det hele?
Avatar billede roenving Novice
17. oktober 2004 - 23:59 #5
Jeg har kigget på noget lignende engang, måske kan du bruge det, som står i denne tråd som inspiration: http://www.eksperten.dk/spm/364720
Avatar billede chuf Nybegynder
18. oktober 2004 - 00:38 #6
Som sagt er jeg ikke den store java-programmør, men tusind tak for linket. Jeg må se om jeg kan få noget strikket sammen.
Avatar billede chuf Nybegynder
18. oktober 2004 - 16:22 #7
Jeg har valgt at benytte frames i stedet - det viser sig at være en meget bedre løsning. Men tak for hjælpen Roenving...
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