Flanor: Nicht vorhandene Frames erkennen

Hallo,

Ich habe da ein kleines Problem und konnte dieses mit SelfHTML (meine Bibel *grins*) nicht lösen.

Ich habe einen Navigator (als ein frame links), welches automatisch beim laden zwei andere Frames via Javascript verändert.

Die Frames welche über das Laden des Navigators geändert werden:
Hier die Funktion:

function onload()
    {
     var header = "neuer_header.html" ;
     var content= "neuer_content.html" ;

if( content !="")
      parent.content.location.href= content ;

if( header != "")
      parent.header.location.href= "add_" + header ;
    }

Das funktionierte bisher auch.

Jedoch haben wir jetzt ein neues Layout und ein neues Frameset, bei dem es jetzt kein "header"-Frame mehr gibt.
Allerdings müssen beide Framesets weiterfunktionieren.

Jetzt versuche ich via JavaScript erkennen zu lassen, ob das Frame "header" existiert oder nicht....

Mein erster Versuch war eine weitere Abfrage einzubinden:
     if( parent.header.name != "")

Hat aber nicht funktioniert, weil "parent.header.name" nicht existiert. Das gleiche habe ich dann ohne dem ".name" probiert.

Jedoch hat der Browser diese Abfrage als richtig erkannt und hat dann wieder gemeint, dass das Objekt "parent.header.location.hre" nciht existiert....

Ich hoffe Ihr könnt mir helfen.

CU, Flanor

  1. Hi
    Wenn ich das richtig verstanden habe, dann hast du jetzt zwei verschiedene Framesets mit einer unterschiedlichen Anzahl Frames.
    Wenn das stimmt, dann wuerde ich an deiner Stelle einfach ueber parent.frames.length Abfragen wieviele Frames existieren und dann halt je nachdem den Header laden oder auch nicht.
    Tschau Holger

    1. Danke,

      Das ist eigentlich eine sehr gute Idee, aber leider ist dieser Weg zu Fehleranfällig.

      Es werden in das eine Frame wieder weitere Frames reingeladen...
      und wenn jetzt wieder ein neues Frame hinzukommt bzw. ein weiteres entfernt wird (bei einem neuen Layout), dann müßte ich wieder alle Scripte ändern....

      Wir haben es jetzt mit
          if( parent.header.name != NULL)
      sowie
          if( parent.header != NULL)
      probiert....

      Mit
          if( parent.header)
      hat es dann endlich funktioniert!

      Vielen Dank für eure schnelle Hilfe...

      Cu, Flanor