Zugriff auf benutzerdefinierte Funktion im pop-up fenster
Sebastian Felling
- javascript
Guten Abend zusammen!
Grundkonfiguration:
Von einer beliebigen Seite aus, erstelle ich dynamisch ein neues Fenster, in welches ich eine Datei "details0.htm" lade:
frmDetails = window.open("details0.htm","frm_details","width=450,height=500,left=225,top=75,location=no,menubar=no,resizable=no,toolbar=no,status=no");
Die Datei "details0.htm" enthält einen Frameset (Frames: "details_top" und "details_bottom"). Außerdem enthält Sie einen Verweis auf eine externe JavaScript-Datei (details.js), die wiederum die Funktion "SetTitle(NewOffer)" und die globale Variable "globalOffer" deklariert.
Nun möchte ich im "Mutterfenster" (Opener) Zugriff auf die benutzerdefinierte Funktion "SetTitle(NewOffer)" nehmen:
frmDetails.SetTitle(OfferName);
Mit MS IE 5 und 6 klappt das auch einwandfrei. Mit Netscape 6.2 bekomme ich aber folgenden Fehler:
"frmDetails.SetTitle is not a function"
Es funktionieren unter Netscape aber sowohl die window-Funktion "moveTo" ("frmDetails.moveTo(10,10)") als auch der Zugriff auf die globale Variable "globalOffer":
frmDetails.globalOffer = "test";
alert(frmDetails.globalOffer);
frmDetails.moveTo(10,10);
Ich nehme an, Netscape erkennt nicht, dass es sich bei "SetTitle" um eine benutzerdefinierte Funktion handelt und sucht sie vergebens im window-Objekt.
Hat jemand einen Rat für mich, wie ich Netscape dazu bringe, die benutzerdefinierte Funktion "SetTitle" (im Pop-Up Fenster) vom Mutterfenster (Opener) aus aufzurufen?
Mit bestem Dank
Sebastian Felling
Hallo,
frmDetails.SetTitle(OfferName);
Mit MS IE 5 und 6 klappt das auch einwandfrei. Mit Netscape 6.2 bekomme ich aber folgenden Fehler:
"frmDetails.SetTitle is not a function"
frmDetails.top.SetTitle(OfferName);
wenn die Funktion in der Frameset-Startdatei liegt oder entsprechend
frmDetails.top.frames["framename"].SetTitle(OfferName);
bei den anderen Frames.
MfG, Thomas
Hallo Thomas!
frmDetails.top.SetTitle(OfferName);
wenn die Funktion in der Frameset-Startdatei liegt oder entsprechend
frmDetails.top.frames["framename"].SetTitle(OfferName);
bei den anderen Frames.
Die Funktion liegt in der Frameset-Startdatei, aber leider klappt keiner deiner Vorschläge:
"Fehler: frmDetails.top.SetTitle is not a function"
Dennoch vielen Dank für deine schnelle Antwort!
Sebastian Felling