holger: Grafik über Namen ansprechen !!!

Ich weiss, dass ich mir jetzt wieder den Unmut einiger Leute auf mich ziehe, da diese Frage bestimmt schon öfter gestellt wurde.
Aber ich schwöre:
Ich habe das Forumsarchiv über 1 Stunde durchstöbert und nix gefunden.

Jetzt zu meinem Problem:
Ich habe mir ein dynamische Menü gebastelt (Grafiken für normal, mouseover und aktiviert).
Die Grafiken werden über Ihre "absolute" Nummer aufgerufen.

.
.
document.images[nr].src = "ov.gif";
.
.

Das klappt wunderbar, ist aber etwas "holprig".
Vor allem wenn ich das Menü meiner HP ändere (bin sehr experimentierfreudig), muss ich ständig die Funktionsaufrufe neu durchnummerieren.

"Meine (wie wahrscheinlich von 1000 anderen vor mir auch)" Idee ist es nun in den einzelnen IMG-Tags des Menüs "Namen" zu vergeben und diese Namen dann an die Funktion zu übergeben.

Wie muss ich dann den Button aus der Funktion heraus "anfassen"??

Aufruf: z.B.:
...onMouseOver="menu('team')"..

.
.
document.??????????????????? = "ov.gif"
.
.

Vielen Dank im voraus.

Hoffentlich steht die Antwort auf meine Frage nicht ein paar Zeilen weiter unten, da ich wie gesagt schon das Archiv durchstöbert habe.

Übrigens: der hier so oft von Stefan gefordete kernige Link auf eine bereits gegebene Antwort würde mir genügen.

Gruss,  Holger !!

  1. Aber ich schwöre:
    Ich habe das Forumsarchiv über 1 Stunde durchstöbert und nix gefunden.

    <img src="/selfaktuell/self_forum/images/04.gif" alt="">
    <../../tcga.htm#a6>

    Das Archiv ist bestenfalls die vierbeste Quelle, hinter SelfHTML, der Forumsauslese und den Beiträgen.

    1. ich war wohl etwas ungenau:

      Meine derzeitige Menü-funktion sieht so aus:

      function aktiv(bild,aktion,nr) {

      switch(aktion){
      case "1":
      if(nr_alt != nr)
      document.images[nr].src = "./pics/button/" + bild + "ov.gif";
      break;
      case "2":
      document.images[nr].src = "./pics/button/" + bild + ".gif";
      if (fall != 0){
      document.images[nr_alt].src = "./pics/button/" + bild_alt + "akt.gif";
      }
      break;
      case "3":
      document.images[nr].src = "./pics/button/" + bild + "akt.gif";
      if (fall != 0){
      document.images[nr_alt].src = "./pics/button/" + bild_alt + ".gif";
      }
      fall = 1;

      bild_alt = bild;
      nr_alt = nr;
      break;
      }
      }

      Dass ich im IMG-Tag einen Namen vergeben kann ist klar.
      Ich möchte jetzt aber anstatt der Nummer des Bildes(document.images[nr].src) de Namen des Bildes (document.???????) an die Funktion übergeben. Dies würde die Wartung des Menüs bei eventuellen Reihenfolge-Änderungen erheblich erleichtern

      P.S.: Die Funktion ist mit Sicherheit nicht lupenrein programmiert, aber sie funktioniert.

      1. Dass ich im IMG-Tag einen Namen vergeben kann ist klar.
        Ich möchte jetzt aber anstatt der Nummer des Bildes(document.images[nr].src) de Namen des Bildes (document.???????) an die Funktion übergeben.

        Also <../../tecbbe.htm#a8>?
        (Immer noch SelfHTML, btw.)

      2. Hallo!

        Dass ich im IMG-Tag einen Namen vergeben kann ist klar.
        Ich möchte jetzt aber anstatt der Nummer des Bildes(document.images[nr].src) de Namen des Bildes (document.???????) an die Funktion übergeben.

        Das kannst Du auch: document.images[Bildname].src funktioniert. (Scheint aber tatsächlich nicht in der Doku zu stehen.)

        Außerdem gibt es bei JavaScript immer die (etwas unsaubere) Möglichkeit, Code-Strings zur Laufzeit zu erzeugen und mit eval() auszuführen (siehe <../../tecm.htm#a2>). Damit würde es so aussehen:

        eval('document.'+Bildname+'.src=...');

        Gruß
        Steffen

        1. Das ist die langersehnte Antwort, die ich haben wollte, danke.
          Michael Schröpl und vor allem ich haben es vortrefflich verstanden aneinander vorbei zu reden (ich glaube, jetzt wo ich die Antwort kenne, war einfach die Frage zu banal und meine Fragestellung zu kompliziert).

          Trotzdem, habt beide Dank für Eure Antworten.