andreas: Navigationsleiste - aktueller Link andersfarbig

Hallo!
Ich hab mir auf einer Seite überlegt, die Navigation auf sämtlichen Seiten (navigation.inc) per php unbd include "navigation.inc"
einzubinden. Das funktioniert auch prima, nur suche ich noch nach einer guten Lösung, wie ich die aktuelle Seite in der Navigation von den anderen Links abhebe, wenn jetzt also jemand auf den Navigationslink "KONTAKT" klickt, öffnet sich die Seite "kontakt.php", aber jetzt leider kann man das an der Navigationsleiste nicht sehen, wo man sich gerade befindet.
Ich habe mal CSS gesagt, vielleicht gibt es ja noch ein andere Lösong, ich habe es mit a:active versucht, aber das wird ja nur andersfarbig für den Moment des Klicks. Genauso alink im Body-Tag.
Gibt es eine einfache Möglichkeit, die den Link zur aktuellen Seite in einer anderen Farbe darzustellen? Oder muß ich in php irgendwie prüfen
if ($PHP_SELF == $link){
echo "<font color="ffffff"> und so weiter...";}
Wie macht Ihr das sonst?

Grüsse
  Andreas

  1. Hallo,
    mit
    a:visited wäre das eine Lösung.
    Besser wäre natürlich ein javaScript mit Memoryfunktion, ähnlich:
    <a href=link onclick="this.style.color='gold';outcolor='gold';if (clicked){memory.style.color='black'};memory=this;clicked=true;" >link</a>

    Hallo!
    Ich hab mir auf einer Seite überlegt, die Navigation auf sämtlichen Seiten (navigation.inc) per php unbd include "navigation.inc"
    einzubinden. Das funktioniert auch prima, nur suche ich noch nach einer guten Lösung, wie ich die aktuelle Seite in der Navigation von den anderen Links abhebe, wenn jetzt also jemand auf den Navigationslink "KONTAKT" klickt, öffnet sich die Seite "kontakt.php", aber jetzt leider kann man das an der Navigationsleiste nicht sehen, wo man sich gerade befindet.
    Ich habe mal CSS gesagt, vielleicht gibt es ja noch ein andere Lösong, ich habe es mit a:active versucht, aber das wird ja nur andersfarbig für den Moment des Klicks. Genauso alink im Body-Tag.
    Gibt es eine einfache Möglichkeit, die den Link zur aktuellen Seite in einer anderen Farbe darzustellen? Oder muß ich in php irgendwie prüfen
    if ($PHP_SELF == $link){
    echo "<font color="ffffff"> und so weiter...";}
    Wie macht Ihr das sonst?

    Grüsse
      Andreas

    1. Hi!
      Meinst Du man braucht auch hier Javascript???

      a:visited wäre das eine Lösung.

      Was für eine Lösung? Wenn ich auf eine andere Seite wechsele bleibt die Farbe ja, wenn ich alle Seite besucht habe sind alle in derselben Farbe! Man soll an der nav-Leiste sehen, wo man gerade ist!

      Grüsse
        Andreas

      1. Hallo,

        Was für eine Lösung? Wenn ich auf eine andere Seite wechsele bleibt die Farbe ja, wenn ich alle Seite besucht habe sind alle in derselben Farbe! Man soll an der nav-Leiste sehen, wo man gerade ist!

        Du suchst vermutlich etwas in dieser Art: http://www.styleassistant.de/tips/beispiel15a.htm.

        MfG, Thomas

  2. Hallo!

    Ich hab das jetzt mal in php versucht, und auch mal mit einer Funktion, die für jeden Link aufgerufen wird, und überprüft, ob der Link derselbe ist, wie die aktuelle Seite.
    War eigentlich ganz einfach, nur würde ich gerne basename($PHP_SELF)
    innerhalb der Funktion aufufen, was nicht geht. Ich muß dass jedesmal als extra Attribut in die Funktion mit einführen.
    Kann ich das nicht irgendwie doch in der Funktion machen?

    Sieht jetzt so aus:

    function aktuell($this,$link,$text){
    if ($this == $link)
    {return "<a href="$link"><font color="#FF6600">$text</font></a>";}
    else
    {return "<a href="$link">$text</a>";}
    }

    <li><? echo aktuell (basename($PHP_SELF),"index.php","Startseite")?></li>
                  <li><? echo aktuell (basename($PHP_SELF),"objekte.php","Objekte")?></li>
                  <li><? echo aktuell (basename($PHP_SELF),"verkaufen.php","Verkaufen")?></li>
                  <li><? echo aktuell (basename($PHP_SELF),"infos.php","Informationen")?></li>
                  <li><? echo aktuell (basename($PHP_SELF),"kontakt.php","Kontakt")?></li>

    1. Moin

      Ich hab das jetzt mal in php versucht, und auch mal mit einer Funktion, die für jeden Link aufgerufen wird, und überprüft, ob der Link derselbe ist, wie die aktuelle Seite.
      War eigentlich ganz einfach, nur würde ich gerne basename($PHP_SELF)
      innerhalb der Funktion aufufen, was nicht geht. Ich muß dass jedesmal als extra Attribut in die Funktion mit einführen.
      Kann ich das nicht irgendwie doch in der Funktion machen?

      RTFM http://www.php.net/manual/de/language.variables.scope.php

      --
      Henryk Plötz
      Grüße aus Berlin

      1. Hi!

        Vielen Dank!

        und sogar DE ;-)

        Habs jetzt so gelöst:

        function aktuell($link,$text){
        global $PHP_SELF;
        $this = basename($PHP_SELF);
        if ($this == $link)
        {return "<a href="$link"><font color="#FF6600">$text</font></a>";} else
        {return "<a href="$link">$text</a>";}
        }

        Vielen Dank nochmal!

        Andreas