Avatar billede yumm Nybegynder
03. oktober 2009 - 15:46 Der er 6 kommentarer og
1 løsning

Gør menu aktiv

Hej.

Jeg har min menu.

<li"><a href="" class="forside-x"><em>Forside</em></a></li>

<li><a href="" class="kontakt"><em>Kontakt</em></a></li>

Som koden er nu, så er "Forside" menuen aktiv. (ses på -x i class). Men hvis der bliver trykket "Kontakt" skal classen ændres så -x kommer ned i kontakt altså så forside vil hedde class="forside" og kontakt vil hedde class="kontakt-x"

Hvis jeg havde lavet det med simpel paging var det ikke noget problem. Her mener jeg index.php?page=forside og index.php?page=kontakt.

Men jeg har mine sider delt op på følgende måde, forside.php og kontakt.php. Derfor kan jeg ikke lige gennemskue hvordan jeg gør menuem aktiv for hvert punkt. Hjælp?
Avatar billede nissen2630 Novice
03. oktober 2009 - 18:35 #1
Det letteste er at lave en nnnnnnn.hover class for hvert element hvor du skifter farven/baggrunden eller hvad du nu vil ændre.

Det absolut letteste ville være at lave en menu class og en menu.hover class.

Ved ikke om jeg har misforstået hvad det er du vil.
Avatar billede yumm Nybegynder
03. oktober 2009 - 22:28 #2
Skal ikke kunne sige om det er misforstået.

Er det noget du kan give et eksempel på?
Avatar billede zynzz Praktikant
04. oktober 2009 - 10:02 #3
Vil tro følgende virker...:

#forside a {
    background-color: #C0C0C0;
      text-decoration:none;
}
#forside a:hover {
      text-decoration:none;
      background-color: #EFEFEF;

<li id="forside"><a href=""><em>Forside</em></a></li>
Avatar billede zynzz Praktikant
04. oktober 2009 - 10:06 #4
Husk lige }
Avatar billede yumm Nybegynder
04. oktober 2009 - 19:37 #5
Hej igen.

Det skal være når der er klikket.
Avatar billede public2 Nybegynder
06. oktober 2009 - 09:05 #6
Ved ikke om det er det her du leder efter, men jeg kommer selv rundt om selv samme problematik som dig ved at have en "menu.php" fil jeg require i hver php-side, som gør følgende:

<?php
$activeMenu-x = basename($_SERVER['SCRIPT_NAME']);
$menu = array(
    'index.php' => 'Forside',
    'about.php' => 'Om mig',
    'contact.php' => 'Kontakt',
);
echo '<ul>';
foreach($menu AS $url => $title){
    echo '<li><a href="'.$url.'" '.(($url == $selected_menu)?'class="activeMenu-x" ':'').'>'.$title.'</a></li>';
}
echo '</ul>';
?>

Her får den aktive menu vedhæftet klassen "activeMenu-x" som så skal laves i CSS, som "aktiveret" og de andre vil have en "almindelige" CSS, som så kan være en anden farve eller noget i den stil.

Det virker i hvert fald fint for mig, og lige det her eksempel er fra en side jeg lavede lidt tid siden hvor linksene er hardcodet da jeg kun skulle bruge tre-fire stykker, men du kan lige så nemt lave det så den bliver hentet ud fra en database.

Det giver også gode muligheder for, hvilket jeg også gjorde på selv samme side, at tilføje menupunkter f.eks. hvis man er logget ind eller man er admin (eller begge).

Håber det er korrekt forstået.

Mvh
Public2
Avatar billede yumm Nybegynder
18. marts 2012 - 22:43 #7
Lukket
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