Stefan Bach: Ärger mit Frames

Beitrag lesen

Hallo Christoph,

Wahrscheinlich passiert folgendes: im _rechten_ Frame produziert dein Script bei Aufruf des Framesets eine Textausgabe, im _linken_ steht zunächst deine "Test.html" Klickst du jetzt in "Test.html" deinen link, produziert das Script vermutlich erneut seine Ausgaben  -  und zwar aus beiden Aufrufen heraus, also sowohl für den link wie auch im rechten Frame. Damit leistet es vermutlich Doppelarbeit und kommt sich selbst in die Quere.

Was du im Verlaufe dieses Threads über das Script gesagt hast ist vermutlich schlichtweg falsch. Was auch immer in dem Script selbst passiert, das Script hat von Frames oder nicht Frames keine Ahnung. Genau so hat der Browser von dem Script keine Ahnung.
Wenn ein Link aufgerufen wird, dann setzt der Browser einen Request ab und bekommt daraufhin vom Server eine Response. Ob diese von einem Script stammt oder nicht ist dem Browser egal. Und wenn ich einen Link in einem Frameset aufrufe, dann wird deshalb auch nur ein ganz normaler Request abgeschickt. Wo die Response dann landet legt das target Attribut fest.
Selbst wenn das Script fehlerhaft wäre (anderst kann ich dein in die Quere kommen leider nicht beschreiben), dann würde die falsche Ausgabe des Scriptes trotzdem in dem Frame landen, in welchem auch eine richtige Ausgabe gelandet wäre.

Die einzige Möglichkeit die ein Script hätte um bei Frames zu intervenieren befschreibt z.B. perlfaq9

To target a particular frame in a frameset, include the "Window-target:" in the header.

print <<EOF;
    Location: http://www.domain.com/newpage
    Window-target: <FrameName>

EOF

Wenn nun das Script bei einem Aufruf mit ?GruppeA einen Window-target: _blank Header sendet, dann könnte der Browser also ein neues Fenster öffnen. Welche Browser target Angaben im Header unterstützen weiß ich nicht, aber eine betrachtung der Script Header könnte hier schon einmal weiterhelfen den Fehler vielleicht zu finden.

Viele Grüße,

Stefan

--
Lass dir das Tanzen NICHT verbieten
http://tanzverbot.de