Avatar billede camban Nybegynder
29. august 2005 - 17:28 Der er 11 kommentarer og
1 løsning

Ændre farve på valgt menupunkt

Går ud fra det er den rette kategori...
Hvordan får ændre jeg farve på menupunkt (fx. forside - se nedenfor) når man er på index4.php?side=forside? Jeg bruger egentlig css men jeg kan ikke få a:active til at virke når a:visited også skal være der?
Håber der er en venlig sjæl, der kan hjælpe!

<td align="left" valign="middle"><?php echo "<a href=\"index4.php?side=forside\" class=\"menulink\">";
                                                                  echo "Forside";
                                                                  echo "</a>";
                                                                ?></td>
                      <td align="center" valign="middle"><?php echo "<a href=\"index4.php?side=profil\" class=\"menulink\">";
                                                                  echo "bo-Hus";
                                                                  echo "</a>";
                                                                ?></td>
                      <td align="center" valign="middle"><?php echo "<a href=\"index4.php?side=hustyper\" class=\"menulink\">";
                                                                  echo "Hustyper";
                                                                  echo "</a>";
                                                                ?></td>
                      <td align="center" valign="middle"><?php echo "<a href=\"index4.php?side=projekter\" class=\"menulink\">";
                                                                  echo "Projekter";
                                                                  echo "</a>";
                                                                ?></td>
                      <td align="right" valign="middle"><?php echo "<a href=\"index4.php?side=kontakt\" class=\"menulink\">";
                                                                  echo "Kontakt";
                                                                  echo "</a>";
                                                                ?></td>
Avatar billede roenving Novice
29. august 2005 - 17:35 #1
a:active betyder at du har muse-knappen nedtrykket på linket (og effekten varer forskelligt i forskellige browsere, nogle fjerner den ligeså snart museknappen slippes, andre bevarer den indtil noget andet aktiveres/fokuseres !-)

-- og jeg gætter på, at det er hele din side, som reloader, og så er al effekt jo væk, når den loades !-)

-- men jeg stødte ind i et trick for nogle år siden, som går ud på at læse den url, siden er loadet med, og hvis et link har den url, så give det nogle andre style-properties !o]
Avatar billede camban Nybegynder
29. august 2005 - 17:38 #2
Ok...har du noget ang. det nævnte?

Tænkte man måske kunne bruge noget js istedet for css...ved valgt menupunkt ændres farven men måske det er et php-issue?
Avatar billede roenving Novice
29. august 2005 - 17:41 #3
Det nemmeste er faktisk at gøre det direkte fra php, for du kan simpelthen i dit stylesheet oprette en særlig klasse, som har lidt andre egenskaber og så kun sætte den på, hvis siden er valgt !-)
Avatar billede camban Nybegynder
29. august 2005 - 17:46 #4
Jeg har en switch case længe nede i min side hvor jeg includer indholdet til de forskellige sider, er det der jeg skal gøre det? Eller du kunne måske fortælle hvordan jeg kunne gøre det helt konkret :o) ?

<?php

switch($_GET['side']) {
        case "forside":
        include("forside.php");
        break;
    case "profil":
        include("profil.php");
        break;
    case "hustyper":
        include("hustyper.php");
        break;
    case "projekter":
        include("projekter.php");
        break;
    case "kontakt":
        include("kontakt.php");
        break;
    default:
        include("forside.php");
        break;
}
?>
Avatar billede roenving Novice
29. august 2005 - 17:50 #5
<td align="left" valign="middle"><?php echo "<a href=\"index4.php?side=forside\"";
if($_GET['side'] == 'forside')echo "class=\"valgtmenu\">" else echo "class=\"menulink\">";
  echo "Forside";
  echo "</a>";
  ?></td>
Avatar billede camban Nybegynder
29. august 2005 - 18:01 #6
Den fejler ...prøvede lige at sætte {}ved if og else men det hjalp ikke rigtig?
Avatar billede roenving Novice
29. august 2005 - 18:07 #7
Man kan selvfølgelig godt skrive det pænere:

<td align="left" valign="middle"><?php echo "<a href=\"index4.php?side=forside\"";
if($_GET['side'] == 'forside')
  echo "class=\"valgtmenu\">";
else
  echo "class=\"menulink\">";
  echo "Forside";
  echo "</a>";
  ?></td>

-- og så opdagede jeg, at der manglede et enkelt ; !-)
Avatar billede camban Nybegynder
29. august 2005 - 18:10 #8
Ja nu virker det fino... Smid et svar, så siger jeg tusind tak :o)
Avatar billede camban Nybegynder
29. august 2005 - 18:14 #9
Jeg har faktisk et andet lille problem med noget js inde i en php-løkke, det kan være du kan hjælpe...hvis jeg gav nogen flere point??
Avatar billede roenving Novice
29. august 2005 - 18:18 #10
Stil hellere et nyt spørgsmål, for jeg er på vej ud af døren nu !-)

-- els velbekomme '-)
Avatar billede camban Nybegynder
29. august 2005 - 18:19 #11
Helt iorden :o)
Avatar billede roenving Novice
29. august 2005 - 18:21 #12
-- og tak for point ;~}
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