Avatar billede thomas_b Nybegynder
02. august 2007 - 23:46 Der er 15 kommentarer og
1 løsning

iframe, åbner div i hovedvindue ?

Hej Eksperter...

Hvis jeg har et iframe vindue (1px x 1px) der loader en side (ex. ?script=go)
Så siger den at den skal "kalde" et div vindue frem, og div vinduet ligger i iframe, men den skal vises i hovedvinduet... hvordan kan dette lade sig gøre ?
Avatar billede olebole Juniormester
03. august 2007 - 03:08 #1
<ole>

Det må du vist forklare igen  =)

/mvh
</bole>
Avatar billede thomas_b Nybegynder
03. august 2007 - 10:20 #2
hehe... Jeg har en div'tag med en besked til brugeren... den ligger i iframe'n !! Den skal vises i hovedvinduet, dvs det vindue der loader iframe'n... Så beskeden skal ud af iframe'n ??
Avatar billede rif1900 Nybegynder
03. august 2007 - 14:21 #3
hejsa thomas...

det kan godt være det kan lade sig gøre uden et helt refresh men tror det godt nok ikke..

det ville ikke være tilstrækkeligt med en alert() måske?

Kan godt nok heller ikke lige forestille mig hvornår man lige løber ind i det behov du har fået dig her :)
Avatar billede olebole Juniormester
03. august 2007 - 14:27 #4
rif1900 >> For et par år siden skulle enhver koder med respekt for sig selv skrive en chat - og da var det meget almindeligt at bruge en skjult iframe til server-kommunikationen  ;o)

thomas_b >> Du kan kalde en funktion i hoveddokumentet fra iframen. Hvis du har en funtion foo i hoveddoumentet, kan du kalde den med:
    parent.foo("besked");

- så er det bare at lade foo indsætte teksten i et div på hovedsiden
Avatar billede thomas_b Nybegynder
03. august 2007 - 20:51 #5
olebole>

Er ikke helt skarp i JS, men hvordan ville scriptet se ud i praksis... ?
Avatar billede olebole Juniormester
03. august 2007 - 21:17 #6
Funktionen kunne se sådan ud:

function foo(sStr) {
    document.getElementById("mitDiv").firstChild.nodeValue = sStr;
}

- og divet:
    <div id="mitDiv">&nbsp;</div>
Avatar billede olebole Juniormester
03. august 2007 - 21:17 #7
document.getElementById("mitDiv").firstChild tager fat i tekst-noden, der ligger i div-elementet  ;o)
Avatar billede thomas_b Nybegynder
03. august 2007 - 21:30 #8
Hvor skal 21:17:53 hen ?
Og funktionen skal vel i hovedvinduet ikke ?
Avatar billede olebole Juniormester
03. august 2007 - 21:39 #9
Funktionen foo og divet i hoveddokumentet. I iframe-dokumentet skriver du:

<script type="text/JavaScript">
parent.foo("Hallo hallo! Dette kommer fra min skjulte iframe");
</script>
Avatar billede lolman Nybegynder
07. august 2007 - 15:04 #10
bare lige en side kommentar. Istedet for at lave din Iframe 1x1 px så kunne du vel bare give den:
position:absolute;
left:-8000;
top:-8000;
i stylen.

EX:
<iframe style="position:absolute;left:-8000;top:-8000;"></iframe>
Avatar billede olebole Juniormester
07. august 2007 - 15:39 #11
Hvis man gør det rigtigt, så kan man godt. Det kræver dog, man fortæller browseren, hvad det er for -8000, man mener ... træskolængder, kilometer, pixels eller gnukæbebredder  ;o)
Avatar billede thomas_b Nybegynder
09. august 2007 - 22:40 #12
Hej Ole...

Kunne godt bruge din ekpetise her... hvis du kan hjælpe ?? :)

http://www.eksperten.dk/spm/790297
Avatar billede olebole Juniormester
09. august 2007 - 23:12 #13
Jeg har ikke en IIS kørende - og det er længe siden, jeg har haft kager mellem hænderne under ASP  :)
Avatar billede thomas_b Nybegynder
10. august 2007 - 00:08 #14
Helt iorden... slulle jo lige spørge... :) ellers tak.
Avatar billede thomas_b Nybegynder
05. december 2007 - 09:24 #15
Nogle svar :)
Avatar billede thomas_b Nybegynder
21. januar 2009 - 17:18 #16
lukker !
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester