Peter: a:hover

im css der Navigation habe ich die Over Funktion definiert:

a:hover {color: #EA8A12; font-weight: bold; text-decoration: none}

das klappt aber nicht zusammen mit einem Skript, in dem die Navi ausliest, welche Seite gerade aktiv ist:

**********************************************************
function menucolor(nr){
 window.setTimeout("top.navi_links.geklickt("+nr+")",1000);
}
**********************************************************

in der Navi steht:

**********************************************************
<script language="JavaScript">

function geklickt(nr){
        var anzahl;
        anzahl=document.all.link.length;
        for(var i=0; i+1<=anzahl; i=i+1){
            if (i==nr){
                document.all.link[i].style.color="#EA8A12";
            }else{
                document.all.link[i].style.color="#999999";
            }
        }
    }

</script>
**********************************************************

Scheint, als ob die Farbangaben sich gegenseitig behindern... wenn das a:hover keine Farbe definiert, sondern ein underlined (z.B.), dann klappts.

Irgendwelche Ideen? Danke im Voraus
Peter

  1. function geklickt(nr){
            var anzahl;
            anzahl=document.all.link.length;

    muß es es hier nicht document.links heißen?
    document.all.link habe ich noch nie gehört.

    for(var i=0; i+1<=anzahl; i=i+1){
                if (i==nr){
                    document.all.link[i].style.color="#EA8A12";
                }else{
                    document.all.link[i].style.color="#999999";
                }
            }
        }

    1. Keine Ahnung... ist von unserem Programmierer *g* Funktionieren tut´s ja... nur mein css nicht

      muß es es hier nicht document.links heißen?
      document.all.link habe ich noch nie gehört.

      for(var i=0; i+1<=anzahl; i=i+1){
                  if (i==nr){
                      document.all.link[i].style.color="#EA8A12";
                  }else{
                      document.all.link[i].style.color="#999999";
                  }
              }
          }

      1. Keine Ahnung... ist von unserem Programmierer *g* Funktionieren tut´s ja... nur mein css nicht

        Na dann sprich' doch nochmal mit Deinem Programmierer, oder? Vielleicht könnt Ihr das mit der seltsamen Abfrage einfach ganz weglassen und

        a:active
                a:visited

        oder sowas verwenden. (in selfhtml nachlesen!)

        Weiß aber nicht, ob das mit Frames funktioniert. Dann könntest Du nämlich das Format für die gerade besuchte Seite angeben. Wenn Dein Programmierer ganz hart ist, dann schreibt er Dir auch ein Javascript, welches auch bei mouseover die farbe ändert.

        Was wollt Ihr überhaupt bezwecken? Nur die Farbe von dem Link ändern, wenn man auf eine andere Seite geht? Wenn ja, warum macht Ihr das dann über Frames hinweg durch den Rücken die Brust nach vorne und wieder ins Auge?

        1. Was wollt Ihr überhaupt bezwecken? Nur die Farbe von dem Link ändern, wenn man auf eine andere Seite geht? Wenn ja, warum macht Ihr das dann über Frames hinweg durch den Rücken die Brust nach vorne und wieder ins Auge?

          Wir müssen

          • die Farbe bei over ändern
          • die gleiche Farbe bei active - auch wenn die Seite nicht über die Navi, sondern über die Sitemap, Index oder Suche angesteuert wird
  2. hi

    document.all will keienr mehr sehen.

    Ansonsten hat eine über JS vergebene Farbangabe immer höchste Priorität und läßt sich nicht mehr über :hover überschreiben.

    Grüße aus Bleckede

    Kai