Chritstian Müller: Fernbedieung aus POP ins parent-Frameset

Hallo Leute,
Ich möchte von einem POP Up Fenster, welches sich aus einem Frame Fenster eines Framesets öffnet und per "focus" immer im Vordergrund steht, neue Seiten in das parent Frameset laden. ("..opener.parent.location.frames[].href ...) CIh habs geschafft die neuen Seiten in ein jeweiliges Fenster zu laden. Ich möchte es aber in das ganze frameset laden, also das ganze - wie mach ich das?
Danke schon mal
Chris

  1. Hallo Chritstian,

    opener.parent.location.frames[].href

    AFAIK hat location kein frames-Objekt.

    Ich möchte es aber in das ganze frameset laden

    Dann versuch's mal mit:

    opener.top.location.href = "wasauchimmer.htm";

    Allerdings kann es dann sein, dass dir die Referenz auf das opener.top-Fenster verlorengeht. Du solltest sie also evtl. für spätere Seitenaufrufe zwischenspeichern:

    Einmalig:  topframe = opener.top;
    Pro Seitenaufruf:  topframe.location.href = "wasauchimmer.htm";

    Ich habe das zwar noch nicht getestet, es müsste aber funktionieren. Die Seiten sollten sich alle auf dem gleichen Server befinden, da sonst Zugriffsverletzungen auftreten.

    , also das ganze

    Ja, das sagtest du bereits ;-)

    Viel Erfolg,
    Robert

    --
    Dieser Beitrag wurde zu 100% aus ganzen Sätzen hergestellt und ist biologisch abbaubar.
    1. Hey - Danke. Die erste Version funzt schon!!! Supi.

      Fetten Gruß - Chris

    2. Hallo Robert, die erste Version funktioniert wunderbar. Nur die zweite nicht. Woran kanns liegen?
      Hier ein Auszug aus dem POP up Fenster:
      ----------------------------------------
      <script language="JavaScript">
      <!--
      function fenster(){
      var topframe;
      topframe="opener.top";
      }

      function laden1()
      { var win;
      win = topframe.location.href="http://www.cm-musics.de";
      }
      -------------------------------------------

      body:

      <body leftmargin="0" topmargin="0" onLoad="ladenvar()"
      -----------------------------------------------

      müßte doch so richtig sein, oder?

      Einmalig:  topframe = opener.top;
      Pro Seitenaufruf:  topframe.location.href = "wasauchimmer.htm";

      Ich habe das zwar noch nicht getestet, es müsste aber funktionieren. Die Seiten sollten sich alle auf dem gleichen Server befinden, da sonst Zugriffsverletzungen auftreten.

      Gruß Chris

      1. Hallo Chritstian,

        Nur die zweite nicht. Woran kanns liegen?

        Nichts für ungut, aber dein Quelltext ist so verbuggt, dass mir der Darm hochkommt und das Gehirn erwürgt. ;-)

        var topframe;

        Topframe muss eine globale Variable sein, also ohne "var" definiert werden.

        topframe="opener.top";

        Wenn du die Variable topframe mit dem *String* "opener.top" belegst, wirst du davon kaum etwas haben. Versuch's mal so:

        function fenster()
        {
          if (opener) if (opener.top)  topframe = opener.top;
        }

        function laden1()
        { var win;
        win = topframe.location.href="http://www.cm-musics.de";
        }

        Hat der Zuweisungsoperator (=) in JavaScript einen Rückgabewert? Wenn dann müsstest du die zweite Zuweisung in runde Klammern schreiben. Ich glaube aber, er hat keinen Rückgabewert.

        function laden1()
        {
          if (topframe) {
            topframe.location.href = "http://www.cm-musics.de";
            return true;
          } else  return false;
        }

        body:

        <body leftmargin="0" topmargin="0" onLoad="ladenvar()"

        Soweit ich das überblicken kann gibt es keine Funktion "ladenvar()". Nicht vorhandene Funktionen können in JavaScript nicht aufgerufen werden, da sind sich ausnahmsweise alle Browser einig.

        <body onload="fenster()">

        <a href="http://www.cm-Musics.de" target="_blank" onclick="return laden1();">Link</a>

        müßte doch so richtig sein, oder?

        Nein, das kann man wirklich nicht behaupten ;-)

        Viel Erfolg,
        Robert

        PS: Deine Forumsbeiträge werden schon gelesen. Bitte verzichte in Zukunft auf eine zusätzliche E-Mail.

        PPS: Schuster, bleib bei deinen Leisten. Ich beschwehre mich ja nicht, dass du kein JavaScript beherrscht, schließlich tut das der Großteil der Bevölkerung nicht. Aber wenn du schon weißt, dass du dich mit einer bestimmten Technik nicht auskennst, wieso willst du sie dann auf "biegen und brechen" (oder schreibt man das jetzt groß?) anwenden? Das Web wäre so einfach, wenn Webseitenautoren auf unnötige Spielereien verzichten und HTML für das verwenden würden, wofür es gedacht ist.

        --
        Dieser Beitrag wurde zu 100% aus ganzen Sätzen hergestellt und ist biologisch abbaubar.