Nage: Frameset nachladen im vorhandenen Frame

Huhu,

also ich habe jetzt gesucht wie verrückt habe aber nix passendes gefunden, vielleicht wird mir hier geholfen ;-)

Ich habe ein Javascript eingebaut das wenn einzelne Unterseiten aus Suchmaschinen aufgerufen werden, das Frameset nachgeladen wird.

Es funktioniert auch mit allen Seiten sehr gut. Jetzt habe ich aber das Probleme das ich ein Frameset in ein vorhandenes Frameset lade (Sprich erste Frameset definiert den Rahmen und ruft dann das zweite Frameset im mittleren Fenster auf das wiederrum aus 4 Frames besteht.).

Wenn jetzt aber das zweite Frameset von einer Suchmaschine geladen wird dann fehlt logischerweise das erste Frameset(mit dem Rahmen).

Ich möchte aber das auch wenn das zweite Frameset geladen wird er prüft ob der Rahmen da ist und wenn nicht das erste Frameset (Rahmen) nachlädt.

Hier der Code den ich in dem ersten Frameset (index.html) habe:

im Head Bereich ->

<script language="JavaScript">
    <!--
    function Jump() {
    if (top.location.search!="") {
    var Size=top.location.search.length;
    var Address=top.location.search.substring(1,Size);
    if(document.images)
    top.center.location.replace(Address);
    else top.center.location.href=Address;
    }
    }
    //-->
    </script>

im Body Bereich ->

<body onLoad="Jump()">

und hier der Code der in jede Unterseite eingebaut ist:

im Head Bereich ->

<script language="JavaScript">
    <!--
    function FramesetTest() {
    if (top.frames.length==0) {
    Address="../index.html?handel.html";
    if(document.images) top.location.replace(Address);
    else top.location.href=Address;
    }
    }
    //-->
    </script>

im Body Bereich ->

<body onload="FramesetTest();">

Ich hoffe ich habe mein Problem einigermaßen nachvollziehbar geschildert und hoffe Ihr könnt mir helfen ;)

winke Nage

  1. hi,

    Jetzt habe ich aber das Probleme das ich ein Frameset in ein vorhandenes Frameset lade (Sprich erste Frameset definiert den Rahmen und ruft dann das zweite Frameset im mittleren Fenster auf das wiederrum aus 4 Frames besteht.).

    das ist m.e. das problem, das als allererstes beseitigt werden sollte.

    gruss,
    wahsaga

    1. mhh was hat das eine mit dem anderen zu tun? außerdem weiß ich nicht was gegen frames in frames spricht. so wird es häufig benutzt unter anderem auch von großen webdesign firmen....

      oder was ist schlim daran...kläre mich mal auf ;)

      1. hi,

        mhh was hat das eine mit dem anderen zu tun? außerdem weiß ich nicht was gegen frames in frames spricht. so wird es häufig benutzt unter anderem auch von großen webdesign firmen....
        oder was ist schlim daran...kläre mich mal auf ;)

        du handelst dir damit probleme ein, derer du nicht mehr herr werden kannst.
        ein beispiel dafür hast du ja mit dieser anfrage eben selber geliefert.

        und was "grosse webdesign-firmen" machen, ist noch lange nicht gut, nur weil es eine "grosse" firma ist.
        einige von denen verbrechen sogar regelrechten unsinn, für den man sie teeren und federn sollte.

        gruss,
        wahsaga

        1. So habe mir jetzt selber geholfen und viel rumprobiert...
          Vielleicht kann ja einer die Beschreibung noch gebrauchen.

          Also hier meine Lösung wie ich das Problem gelöst habe.

          in der Index.html (erstes Frameset) habe ich folgenden Quellcode eingebaut:

          im Head Bereich:

          <script language="JavaScript">
              <!--
              function Jump() {
              if (top.location.search!="") {
              var Size=top.location.search.length;
              var Address=top.location.search.substring(1,Size);
              if(document.images)
              top.center.location.replace(Address);
              else top.center.location.href=Address;
              }
              }
              //-->
          </script>

          im Body Bereich:

          <body onLoad="Jump()">

          In alle Unterseiten habe ich folgenden Code eingebaut:

          Im Head Bereich:

          <script language="JavaScript">
              <!--
              function FramesetTest() {
              if (top.frames.length==0) {
              Address="../index.html?handel.html";
              if(document.images) top.location.replace(Address);
              else top.location.href=Address;
              }
              }
              //-->
          </script>

          Im Body Bereich:

          <body onload="FramesetTest();">

          Das Problem mit dem 2ten Frameset (wird bei mir im ersten Frameset index.html geladen) habe ich mit folgenden Code gelöst (Den Code im 2ten Frameset einfügen):

          im Head Bereich:

          <script language="JavaScript">
              <!--
              if(!parent.rechts) {
              location.href="../index2.html?" + location.pathname;
              }
              //-->
          </script>

          Dann habe ich eine 2te Index Datei (index2.html) erstellt die genau den gleichen Inhalt wie die erste index.html hat(da wo der erste Frameset geladen wird). Nur das Javascript wird in der 2ten Index Datei geändert mit folgendem:

          im Head Bereich:

          <script language="JavaScript">
              <!--
              function checkFramecall() {
              var Adressanhang=location.search;
              if(Adressanhang)
              frames.center.location.href=Adressanhang.substring(1,Adressanhang.length);
              }
              //-->
          </script>

          <frameset onLoad="checkFramecall()">

          Also einfach erklärt...alle Unterseiten laden mit dem Javascript die index.html nach wenn Sie nicht im Frameset sind.

          Das 2te Frameset lädt aber die index2.html nach wenn das erste Frameset fehlt (die ja vom Inhalt genauso ist wie die index.html) und integriert sich wieder in das erste Frameset (bei mir der Rahmen).

          Viel Spaß
          winke
          Nage