Holger Tillmann: Die ewige Geschichte: 'ZweiFrames' (... mit einem Befehl ändern)

Hi Leute,
die Seite, um die es geht, hat zwei Menüleisten - eine obere, horizontale und eine linke, senkrechte. Die Schaltflächen sind mit Grafiken verbunden, die einen aktiven (geklickten), einen inaktiven und einen MouseOver-Zustand besitzen.

Was prima klappt, ist der Austausch aktiver Schalter gegen inaktive bei neuem Klick innerhalt DESSELBEN Frames. Das Problem ist aber ein Klick außerhalb des zuletzt angeklickten Frames. Letzteres bleibt nämlich in der zuletzt bewirkten Schalterstellung bestehen. Gibt es dafür eine Lösung, die nicht einen Reload des "verlassenen" Frames erfordert, sondern einfach alle Schalter in diesem ''fremden'' Frame auf inaktiv setzt? Das müsste ein Befehl sein, der aus einem Frame Operationen in einem anderen Frame in Gang setzt.

Ansonsten könnte ich mir nur einen Reload des jeweils anderen Frames vorstellen, um dort alle Schalter auf inaktiv zu setzen. Das müsste dann über den ZweiFrames-Befehl aus SELFHTML laufen. Funktioniert hier aber nicht, und ich habe auch nach langr Suche den Fehler nicht gefunden.

Vielleicht fällt hier ja jemandem etwas ein.

Viele Grüße aus HH,
Holger

  1. Hallo!

    die Seite, um die es geht, hat zwei Menüleisten - eine obere, horizontale und eine ....

    Irgendwie gibt es eine gepflegen JavaScript-Error!

    URL-Zeile:   javascript:   eingeben

    -----------------------------><8---------------------------------
    JavaScript Error:
    http://www.zenithonline.de/hp/holgers_bastelkiste/orient.html:

    ZweiFrames is not defined.
    -----------------------------><8---------------------------------

    Kannst Du den mal in Ordnung bringen, das man Dein Problem mal verfolgen kann und sich dementsprechend eine Lösung ausdenken kann?

    MfG, André Laugks

    1. Irgendwie gibt es eine gepflegen JavaScript-Error!

      Genau das ist mein Problem. Ich find ihn einfach nicht. Ich dachte, hier schaut mal jemand mit rightclick das Script an und verschafft mir ein Aha-Erlebnis ...

      Hoffend,
      Holgr

      1. Hallo!

        Genau das ist mein Problem. Ich find ihn einfach nicht. Ich dachte, hier schaut mal jemand mit rightclick das Script an und verschafft mir ein Aha-Erlebnis ...

        Hoffend,

        Ob es wirklich noch Hoffnung gibt? ;-)

        Warum vergibst Du solche Namen "_center"? Lass mal den Unterstrich als erstes Zeichen weg. Es mag vielleicht funktionieren, aber denke mal an _blank, _new, _top und _parent. Mit dieses Targetangaben kannst Du bestimme Aktionen ausführen. Wie gesagt, _center muß kein Fehler sein, aber man muß dem Browser nicht das Leben schwerer machen, als wie es schon ist. Ich bin mir auch nicht sicher, ob ein Unterstrich als erstes Zeichen verboten ist. parent.frames._center.location.href funktioniert auch, aber wer weis unter Umständen könnte das schief gehen. Da habe ich schon einiges erlebt.

        Welches der 3 Frames ist Frame "main"?

        <frame src="menue_up.html" noresize scrolling="NO" marginwidth="10" marginheight="10" border="0" frameborder="NO" name="navi_1">
        <frame src="menue_left.html" marginwidth="10" marginheight="0" name="navi_2" border="0" noresize frameborder="NO" scrolling="NO">
        <frame src="orient.html" name="_center" marginwidth="0" marginheight="0" scrolling="AUTO">

        Warum frage ich das, welches Frame "main" heißt? Schaue Dir das mal genau an parent.frames.main.location.href=URL1; .

        function ZweiFrames(URL1,Fr1Nummer,URL2)
           {
            parent.frames.main.location.href=URL1;
            self.location.href=URL2;
           }

        So, nun die Übergabevariablen für die Funktion: ZweiFrames(URL1,Fr1Nummer,URL2). Da stehen 3 Variablen in den Klammern, Du übergibst aber immer nur zwei Strings (javascript:ZweiFrames('../impressum/imp_text.html','menue_left.html')"), was Ok ist, aber hier schief geht. Der zweite Übergabewert wird der Variable "Fr1Nummer" zugeteilt, die aber nicht verwendet wird. Die Variable "URL2" geht leer aus. Es gibt zwei Möglichkeiten, wie es richtig lauten sollte.

        ...Moment, ich mache mir erstmal ein kaltes Köstritzer aus! mmmmhhhh das tut gut!

        1.Möglichkeit
        function ZweiFrames(URL1,Fr1Nummer,URL2)
        javascript:ZweiFrames('../impressum/imp_text.html', '', 'menue_left.html')"

        2.Möglichkeit
        function ZweiFrames(URL1, URL2)
        javascript:ZweiFrames('../impressum/imp_text.html', 'menue_left.html')"

        Die zweite Möglichkeit ist wohl besser.

        Ok, mache das mal fertig und dann sehen wir weiter! OK?

        mfg, André Laugks