20. september 2004 - 15:28
Der er
39 kommentarer og 1 løsning
height på iframe og table
Hej alle sammen..
jeg er lige gået i gang med en ny hjemmeside, og stødte på et problem på min side.. jo altså som du kan se på min side er "menu'ernes" width på 600 og iframes på 500. jeg har fået lavet det sådan at iframen tilpasser sig størrelsen af den side den skal vise, men jeg ville gerne have at "menu'erne" fuglte med. men blev ved med at være 100 størrer end iframen.
Min side:
http://frip.dk/jabas/Default.htm
Annonceindlæg fra Red Hat
20. september 2004 - 15:39
#1
Højden er da hhv. 600 og 500 ...
20. september 2004 - 15:50
#2
nå ja... men det gør jo ingen forskel
20. september 2004 - 16:17
#3
Kan du da ikke bare sætte menuernes højde til 500 ?-)
20. september 2004 - 22:16
#4
jojo... men når iframen bliver størrer skal menu'erne også blive større
20. september 2004 - 23:19
#5
Så kan du f.eks. bruge dette lille script: <script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0; for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight); } for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 'px'; } } </script> -- og så kalde det fra den funktion, som giver iframen den tilsigtede højde, f.eks. i et script i iframen: <script language="javascript" type="text/javascript"> function ifrHeight(){ var t=document.body.scrollHeight; if(parent!=window)parent.document.getElementById('IFRAMEID').style.height=t+4+'px'; parent.synchronizeElms() } </script>
21. september 2004 - 16:58
#6
hvor skal jeg sætte de to ting hen?
21. september 2004 - 17:01
#7
Som det fremgår, skal det sidste script ind i iframen (og husk at sætte id'en på iframe-tagget i hoevsiden !-) Så er det jo nærliggende at antage, at det andet ikke skal deri, men i hoveddokumentet ... Bemærk listen i starten, den skal selvfølgelig afspejle de id'er du bruger til dine 3 elementer !o]
22. september 2004 - 12:47
#8
hvad er id'erne
22. september 2004 - 13:17
#9
<iframe id="IFRAMEID" ... > -- alle html-elementer kan man give et id, så uanset om et andet element har en anden type (en div overfor f.eks. en tabel !-) kan ovenstående synkronisere højden !o]
22. september 2004 - 20:14
#10
det virker ikke, siden bliver ikke længere ! <script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0; for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight); } for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 'px'; } } </script> // Satte jeg ind i default.htm (altså hovedsiden)og <iframe id="IFRAMEID"> i dafault.htm body'en <script language="javascript" type="text/javascript"> function ifrHeight(){ var t=document.body.scrollHeight; if(parent!=window)parent.document.getElementById('IFRAMEID').style.height=t+4+'px'; parent.synchronizeElms() } </script> // satte jeg ind i den side iframen skal vise (i head) hvad gør jeg galt
22. september 2004 - 20:17
#11
Har dine andre elementer så id="left" og id="right" ?-)
24. september 2004 - 19:08
#12
ja men det virker ikke.. // // Det her satte jeg ind på defualt.htm (altså hovedsiden) // Og i default.htm "body" satte jeg <iframe id="IFRAMEID"> // <script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0; for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight); } for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 'px'; } } </script> // // satte jeg ind i den side iframen skal vise (i "head") // <script language="javascript" type="text/javascript"> function ifrHeight(){ var t=document.body.scrollHeight; if(parent!=window)parent.document.getElementById('IFRAMEID').style.height=t+4+'px'; parent.synchronizeElms() } </script> // // mine to menu'er som er lavet i "table" gav jeg id'erne: // id="left" og id="right" //
25. september 2004 - 09:02
#13
Hrm, har du ikke et link til den side, hvor du har implementeret det ?-)
25. september 2004 - 13:35
#14
25. september 2004 - 13:39
#15
Har du ikke glemt id="IFRAMEID" på iframe-tagget ?-)
25. september 2004 - 18:27
#16
jo men det virker ikke ... hvilke koder vil du gerne se af mine sider
26. september 2004 - 02:11
#17
<IFRAME border="0" id="IFRAMEID" name="Main" src="Forside.htm" scrolling="no" cellspacing="0" align="center" frameBorder="0" width="518" height="500" style="border-top: 1 solid; border-right: 0 solid; border-left: 0 solid; border-bottom: 1 solid; border-color:#000000;"></IFRAME> -- er jo rigtigt nok, men du har jo så også sat den id på body-elementet, så iframen vil ikke blive opdaget overhovedet ... Et id skal være absolut unikt, der må altså ikke være mere en een eneste af hver !-)
26. september 2004 - 15:35
#18
det virker stadig ikke
26. september 2004 - 15:38
#19
Der mangler jo også kaldet af ifrHeight !-) <script language="javascript" type="text/javascript"> function ifrHeight(){ var t=document.body.scrollHeight; if(parent!=window)parent.document.getElementById('IFRAMEID').style.height=t+4+'px'; parent.synchronizeElms() } window.onload = ifrHeight; </script>
26. september 2004 - 15:52
#20
og hvor skal jeg sætte den ind ??
26. september 2004 - 15:54
#21
Det er jo den kode, du har/skal have i Forside.htm !-)
26. september 2004 - 15:57
#22
det er hlet galt prøv at gå ind og se
26. september 2004 - 16:01
#23
Mærkværdigt, men når det er de 4px, må du også smide dem i synchronizeElms: <script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0; for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight); } for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 4 + 'px'; } } </script>
26. september 2004 - 16:38
#24
hvor skal det sættes ind
26. september 2004 - 16:40
#25
Hvor den er i forvejen ...
26. september 2004 - 16:42
#26
den gør det forkert de to menu'er skal være 100 længere hele tiden
26. september 2004 - 16:51
#27
Aha ...
26. september 2004 - 17:24
#28
hvad skal jeg så gøre
27. september 2004 - 14:42
#29
er du der
27. september 2004 - 14:53
#30
F.eks. <script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0; for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight-((i==2)?0:100)); } for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 4 + ((i==2)?0:100) + 'px'; } } </script>
27. september 2004 - 14:54
#31
Uff, den skal være lig med 1 !-) <script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0; for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight-((i==1)?0:100)); } for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 4 + ((i==1)?0:100) + 'px'; } } </script>
28. september 2004 - 20:48
#32
hvordan ændre man mellemrummet menu og iframe?? kna man ikke fjerne den afstand der er mellem sluttnigen af siden og border'eren??
29. september 2004 - 01:17
#33
Mellemrummet ?-) Og afstanden kan sikkert ændres bare ved at sætte border på body til 0 !-)
29. september 2004 - 15:45
#34
hmm... detforstod jeg ikke men opdagede lige noget andet, lige nu bliver siden ikke lille igen.. lad mig uddybe! hvis du klikker på et link som fylder mere end den forige side bliver siden aoutomatisk længere (perfekt) men siden bliver derimod ikke mindre! hvordan gør man det
29. september 2004 - 15:55
#35
<script type="text/javascript"> var elms = ['left','IFRAMEID','right']; function synchronizeElms(){ var maxH = 0,startH=440;//Indsæt menuernes starthøjde; if(document.getElementById(elms[1]).offsetHeight>startH-100){ for(i=0;elms.length>i;i++){ maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight-((i==1)?0:100)); } }else maxH = startH; for(i=0;elms.length>i;i++){ document.getElementById(elms[i]).style.height=maxH + 4 + ((i==1)?0:100) + 'px'; } } </script>
29. september 2004 - 16:22
#36
der er ikke kun 100 height afstand der er meget mere nu, hvad gør man ved det ??
03. oktober 2004 - 12:16
#37
hallo er du der
07. oktober 2004 - 20:41
#38
er du der roenving,
09. oktober 2004 - 15:04
#39
lukker snart
31. oktober 2004 - 11:47
#40
lukker
Vi tilbyder markedets bedste kurser inden for webudvikling