11. juli 2006 - 00:46Der er
6 kommentarer og 1 løsning
Problem med opener
jeg har en side med en iframe i den iframes åbnes en popup hvor man kan fore nogle udregninger. og bagefter overføre tallene til "opener", det virker som også fint. men jeg prøver at lave en funktion der åbner et nyt billede med hovedsiden hvis "opener" er blevet lukket og stadig overføre tallene.
scriptet detecter fint hvis opener er blevet lukket og åbner et nyt vindue med frame.php men den overfører ikke tallene. som den gør hvis opener ikke var blevet lukket.
når du åbener en side med en iframe i får du klarmelding fra siden selvom den underside der skal ligge i din iframe måske endnu ikke er hentet. og så prøver du at stoppe data i en form der ikke er der endnu.
Så du skal have indføre en check på om din ifram er blevet loadet. fx: <SCRIPT LANGUAGE="JavaScript"><!--
function afventLoadAfIframe() { if ( opener.iframe && opener.iframe.save && opener.iframe.save.box4 ) { opener.iframe.save.box1.value = document.popupForm.box1.value; opener.iframe.save.box2.value = document.popupForm.box2.value; opener.iframe.save.box3.value = document.popupForm.box3.value; opener.iframe.save.box4.value = document.popupForm.box4.value; window.close(); } else { setTimeout( "afventLoadAfIframe()", 200 ); // vent lidt mere } }
Længden af timeout betyder ikke så meget (hvis den er lille ventes der blot flere gange). bare den ikke er latterliget lille eller stor. Det må være min test der er noget galt med: if ( opener.iframe && opener.iframe.save && opener.iframe.save.box4 ) {
du kan evt prøve at sætte en variabel i siden i din iframe onload og så teste på den variabel istedet.
fx: <body onload="window.nuErJegLoaded=1;"> og så lave testen om til: if ( opener.iframe && opener.iframe.nuErJegLoaded ) { det vil være en sikrere test
hej jakoba, jeg har lige prøvet med den body onload i framen uden held. og nuErJegLoaded funktionen. det eneste der stadig får det til at fungere er når jeg sætter den alert ind.
Det var sørens. Det eneste der skulle kunne få 'nuErJegLoaded' metoden til at fejle er hvis du har scripts i siden der ændrer indholdet i formen efter load.
Har du mulighed for at lægge et link så vi kan kikke på siden og dens kildekode ?
Jeg har valgt at indsætte den alert så det tilsyneladende virkede, og i stedet puttet noget brugbart indformatione ind i alert´en så den ikke er generende.
Men tilgæld har jeg kunnet bruge din hjælp til en anden del at mit script. så hvis du smider et svar kan du få dine velfortjente point.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.