nikola: bildwechsel onmouseout von Frameinhalt abhaengig machen

Hallo liebes Forum,
ich hoffe, Ihr koennt mir helfen, denn ich wurstel an diesem Problem schon Ewigkeiten rum.
mein Problem:
ein Bild soll beim Mouseover im gleichen Frame, in dem sich der Link befindet, erscheinen,
aber nur wieder verschwinden, wenn der Inhalt des rechten Frames nicht dem erschienenen Bildsymbol entspricht.
Anzusehen unter home.snafu.de/rikas beim Link "Containerservice".
ich habe das Ganze fuer den Link Asbest probiert,
d.h. versucht, eine Abfrage einzufuegen, die erst den Inhalt des Frames prueft, bekomme aber Fehlermeldungen.
Ist das Vorgehen ueberhaupt richtig? Oder habe ich nur einen bloeden Fehler drin?

<A HREF="asbest.htm" TARGET="text"
                                ONMOUSEOVER="changeImages('Bildsymbol', 'images/Bildsymbol-Asbest_over.jpg', 'Asbest', 'images/Asbest-over.jpg'); return true;"
                                ONMOUSEOUT=
                                if {parent.text.location.href!="asbest.htm"
                                   }

"changeImages('Bildsymbol', 'images/Bildsymbol.jpg', 'Asbest', 'images/Asbest.jpg'); return true;">

Dank fuer Eure Hilfe
Nikola

  1. Hallo

    <A HREF="asbest.htm" TARGET="text"
                                    ONMOUSEOVER="changeImages('Bildsymbol', 'images/Bildsymbol-Asbest_over.jpg', 'Asbest', 'images/Asbest-over.jpg'); return true;"
                                    ONMOUSEOUT=
                                    if {parent.text.location.href!="asbest.htm"
                                       }

    "changeImages('Bildsymbol', 'images/Bildsymbol.jpg', 'Asbest', 'images/Asbest.jpg'); return true;">

    Eigentlich müsste soetwas theoretisch funzen. Versuch doch mal die UEberprüfung des Frameinhaltes in einer function() zu schreiben, die wie changeImages im Header notiert ist. So eine konstrruktion mit if() in der Übergabe eines onMouseout Events ist nicht der elegante Weg.

    Vieleicht sehen andere mehr.....

    cu

  2. Hi Nikola,

    Das Problem liegt darin, dass location.href denn gesamten Pfad zurueck gibt, daher trifft die if-Abfrage nicht ein. Du musst also nur den letzten Teil des Pfads abfragen. Ausserdem scheint mir die Klammersetzung etwas unorthodox.

    Versuche mal den Mouseout Part so in der Richtung zu machen:

    ONMOUSEOUT="if (parent.text.location.href.substr(parent.text.location.href.length-10, parent.text.location.href.length)!="asbest.htm"){.....};"

    Gruss,
    Mel

    1. Das Problem liegt darin, dass location.href denn gesamten Pfad zurueck gibt, daher trifft die if-Abfrage nicht ein. Du musst also nur den letzten Teil des Pfads abfragen.

      also nur location.href? wie weiss JavaScript denn dann, dass der andere frame gemeint ist?

      Ausserdem scheint mir die Klammersetzung etwas unorthodox.
      bitte helfen: ich bin blutige Anfaengerin und sitze hier mit handbuechern, die nicht gerade zum ueberblick beitragen!

      Versuche mal den Mouseout Part so in der Richtung zu machen:

      ONMOUSEOUT="if (parent.text.location.href.substr(parent.text.location.href.length-10, parent.text.location.href.length)!="asbest.htm"){.....};"

      was erreiche ich damit?
      es freut sich auf Antwort

      Nikola

  3. Hi Nikola,

    Ist das Vorgehen ueberhaupt richtig?

    ich weiß nicht, wie komplex Deine Steuerung insgesamt noch werden wird.
    Ich versuche aber mal, Dir eine Idee zu skizzieren, wie Du von einer anderen Richtung an das Problem heran gehen könntest.

    Bisher versucht der Button, herauszufinden, ob das richtige Dokument geladen ist.
    Das ginge auch anders herum: Das geladene Dokument könnte 'seinen' Button setzen!

    Wenn Du nämlich viele solcher Buttons und viele Dokumente hättest, dann würde Deine Lösung sehr schnell an ihre Grenzen stoßen.
    Aber mein Ansatz würde bedeuten, daß jedes Dokument sich im Wesentlichen um _einen_ Button zu kümmern hätte (und zwar mit identischem Code, nachgeladen aus einer JavaScript-Include-Datei - den Namen des Buttons könnte man ggf. sogar aus dem Namen des Dokuments berechnen).

    Der Ansatzpunkt für das Reagieren wäre in meinem Modell jeweils der <body onload>-Event des geladenen Dokuments.

    Viele Grüße
          Michael