Avatar billede natx Nybegynder
16. juli 2004 - 12:01 Der er 6 kommentarer

Definere højden på en iframe

Hejsa
Jeg benytter 2 iframes med navnene "pmenu" og "info".
Det er kun lykkedes mig at sætte deres dimentioner vha. pixels.

Kan man sætte dem til f.eks. 100% så de tilpasser sig det indhold som kommer i dem?

Hvis ikke - er det så en måde at bestemme at dokument skal have en bestemt scrollbar længde - så kan jeg jo sætte den maunelt i de enkelte filer som placeres i iframen "info"?
Avatar billede roenving Novice
16. juli 2004 - 13:55 #1
Er ikke sikker på hvad du mener, men du kan lægge dette script i alle de filer, du åbner i iframen, og så give iframen et id="IFRAMEID"

<script language="javascript" type="text/javascript">
function ifrHeight(){
var t=(window.innerHeight)?document.innerHeight:document.body.scrollHeight;
if(parent!=window)parent.document.getElementById('IFRAMEID').style.height=t+4+'px';
}
</script>
Avatar billede susanne_larsen Nybegynder
17. juli 2004 - 22:19 #2
Hvis jeg forstår dig korrekt, så ønsker du at iframen automatisk skal udvides/sammentrækkes i højden, alt efter hvor meget dit indhold fylder.... og ja det kan du godt...

Sidder selv og leger med effekten.
Her et rigtig godt link, der udførligt beskriver hvad du skal gøre
http://www.dyn-web.com/dhtml/iframes/

jeg har også prøvet --- indsættes i <HEAD> på den iframe du vil kalde:

<!--SÆT HØJDE PÅ IFRAME-->
<script language="JavaScript">
function setFrameHeight() {
if (parent.document.getElementById('iMenu')) {
parent.document.getElementById('iMenu').height=document.body.scrollHeight;
}
}</script>


og flg på <BODY>

<BODY onload="setFrameHeight()">

Og så skal du lige huske IDét på den side hvor iframen skal vises ex.
<iframe id="iMenu" src="Menu.html" width=190 height=300 marginwidth=0 marginheight=0 hspace=0 vspace=0 frameborder=0 srolling="no"></iframe>

Men det går i koks hvis siden skal kunne skrives ud i printvenlig version... Eller også er det bare mig :)
Avatar billede susanne_larsen Nybegynder
17. juli 2004 - 22:20 #3
....på nr. 2 forslag that is. Den første kan godt tilpasses :)
Avatar billede roenving Novice
17. juli 2004 - 22:28 #4
Virker min metode da ikke, susanne ?-)

-- måske bedre at få rettet den tavetosse, som har indsneget sig:

<script language="javascript" type="text/javascript">
function ifrHeight(){
  var t=(window.innerHeight)?window.innerHeight:document.body.scrollHeight;
  if(parent!=window)parent.document.getElementById('IFRAMEID').style.height=t+4+'px';
}
</script>

<body onload="ifrHeight()">

-- som også har den fordel, at den virker på de browsere, som har innerHeight på window, men ikke har scrollHeight ...
Avatar billede susanne_larsen Nybegynder
17. juli 2004 - 22:41 #5
hovsa hissa ups, den havde jeg ikke lige set --- hehe ved jeg datte - har ikke lige tjekket ;))
Det vil da fluks prøve. Er rigtig godt at den virker på innerHeight - har jeg nemlig ikke kunnet få til at fungere .p
Avatar billede susanne_larsen Nybegynder
19. juli 2004 - 21:29 #6
>>roenvig virker bare smukt ;)
Så natx bare glem mine kommentarer :)
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