Peter Rehm's Blog

apple,development,life & more

IFrames mit variabler Höhe

Mit 1 Kommentar

Bei Iframes ist eine Breite von 100% kein Problem, dies lässt sich technisch ohne Probleme realisieren. Bei der Höhe ist dies allerdings nicht möglich da dann immer 100% der gesamten Höhe genommen werden.

Daher kann man sich nur mit JavaScript aushelfen. Dieses Javascript wird beim onLoad ausgeführt. onLoad kann nicht nur bei body Elementen sondern auch bei iframe Elementen verwendet werdenten verwendet. Allerdings kann Safari mit den onLoad Elementen nicht viel Anfangen, dies ist das Hauptproblem. Da kann man sich nur helfen, indem man in den body einen onload hinzufügt der die Größe speichert.

Das passende JavaScript dazu:

CODE:
function getIframeHeight1() {
fix = 300; // fixe höhe
min = 100; //mindes höhe
max = 300; //max höhe
if(fix>max) return fix; // wenn fix größer als max => fix
if(fix>min && fix
if (window.innerHeight) {
h = window.innerHeight;
} else if (document.body && document.body.offsetHeight) {
h = document.body.offsetHeight;
}
if(h
if(h>max) return max;
return h;
}
function adjustIframe()
{
document.getElementById('iframe1').height=getIframeHeight1();
}


Danke an Alex für die "Inspiration" :-)

Geschrieben von Peter Rehm

12.07.2006 um 00:16:28

Abgelegt in Verschiedenes

0 Trackbacks zu IFrames mit variabler Höhe

Trackback-URL für diesen Eintrag

  1. Keine Trackbacks

1 Kommentar zu IFrames mit variabler Höhe

  1. Hallo,
    leider ist das Script fehlerhaft. Ich habe leider mangelnde Kenntnisse in Javascript, aber Firebug zeigt folgendes an:
    missing ) after condition
    [Break on this error] if (window.innerHeight) {\n

    Leider werden sogar darauf folgende Javascripte nicht ausgeführt.
    Eigentlich ist das Script, wenn es denn funktionieren würde, genau das was ich Suche.

    Bimon

    30 Jul 08 um 20:45

    Antwort

Kommentar schreiben

BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA