Zurück   Flashforum > Alternative Technologien > JavaScript & jQuery

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-01-2009, 11:47   #1 (permalink)
Gelbraum
 
Benutzerbild von mathiregister
 
Registriert seit: Jun 2007
Beiträge: 1.144
iFrame dem inhalt anpassen?

hallo leute, ich habe ein wenig im internet gesucht und gefunden was ich brauche! einen kleinen workaround um einen iFrame dem geladenen Inhalt in der Größe anzupassen!

folgendermaßen siehts bei mir aus:

die seite die den iFrame trägt:
PHP-Code:
<div class="frame" align="right">  
<
iframe id="frame" width="800px" height="%" name="frame" frameborder="0" scrolling="no">

</
iframe>
</
div
und der inhalt trägt im body onLoad folgende zeile:
PHP-Code:
<body onload="parent.document.getElementById('frame').height = document.body.scrollHeight; parent.document.getElementById('frame').width = document.body.scrollWidth;"
ich muss sagen dass klappt eigentlich wunderbar, nur habe ich eine kleine frage die mich noch stört!

der iFrame wird wie ihr oben sehen könnt mit height="%" definiert (also ohne fixem wert)! wenn ich nun einen inhalt in den frame lade wird die höhe dementsprechend angepasst! das klappt wunderbar!

aber mit der breite läuft das ganze nicht so! wenn ich da statt (zur Zeit) 800px z.B. width="%" oder width="" verwende nimmt die breite des iFrames immer nur den standartWert an! also wenn ich einen iFrame ohne height und width definiere wird der bei mir so 200px mal 200px! wenn ich nicht 800px in der breite angebe wird mir der iFrame nicht in der breite des inhalts skaliert!! WIESO??

kann mir da jemand helfen?

danke und lg matthias
__________________
!!!
mathiregister ist offline   Mit Zitat antworten
Alt 27-01-2009, 19:37   #2 (permalink)
Gelbraum
 
Benutzerbild von mathiregister
 
Registriert seit: Jun 2007
Beiträge: 1.144
hat keiner eine idee woran das phänomen liegen könnte!
__________________
!!!
mathiregister ist offline   Mit Zitat antworten
Alt 27-01-2009, 20:20   #3 (permalink)
·
 
Benutzerbild von pilzebub
 
Registriert seit: Oct 2003
Ort: ··
Beiträge: 722
Hast du es schon mal mit width="100%" probiert?... oder worauf willst
du hinaus?
pilzebub ist offline   Mit Zitat antworten
Alt 28-01-2009, 08:11   #4 (permalink)
nobody is perfect
 
Benutzerbild von richtsteiger
 
Registriert seit: Jul 2004
Ort: munich
Beiträge: 876
Zitat:
Zitat von pilzebub Beitrag anzeigen
Hast du es schon mal mit width="100%" probiert?... oder worauf willst
du hinaus?
Eben, warum gibst du dem iframe nicht einfach 100% und verpasst dem DIV die
800px als Breite per CSS? Und den Container kannst du ja nach Belieben, auch
per Javascript, dann die neue Breite bzw. Höhe verpassen. Und dein iframe
passt sich dem dann ganz automatisch an.
__________________
XING
richtsteiger ist offline   Mit Zitat antworten
Alt 28-01-2009, 10:12   #5 (permalink)
Gelbraum
 
Benutzerbild von mathiregister
 
Registriert seit: Jun 2007
Beiträge: 1.144
gut, danke euch beiden! habe das problem jetzt lösen können!
weiß zwar nicht wie, aber es klappt!

eine frage hab ich aber gleich noch: das mit dem iFrame an Inhalt anpassen funktioniert echt super in allen browsern außer SAFARI!

in safari gibts eine kleine lästige erscheinung die mich noch stört! nämlich wird der iFRAME nur angepasst wenn der geladene Inhalt größer als der vorherige ist! d.h. wenn ich z.B. eine seite mit 100 bildern untereinander in den iFrame lade, dann wird der iFrame auf weißgottwieviel pixel höhe geresized! PASST! SO SOLLS SEIN! aber wenn ich danach eine seite mit einem bild lade, wird der iFRAME nich mehr zurückresized! also er wird immer nur größer, aber nie kleine!

Dieses phänomen tritt nur in safari auf!
hat irgendwer vielleicht einen tollen einfall wie ich das umgehen könnte? ich dachte irgendwie an eine selbständige aktualisierierung der gesamten seite bei einer iFRAME-Inhaltsänderung!

DENN BEIM AKTUALISIEREN DES BROWSERFENSTERS wird der iFrame wieder richtig dem inhalt angepasst!

ist das halbwegs verständlich was ich erklären will!

danke und lg
__________________
!!!
mathiregister ist offline   Mit Zitat antworten
Alt 28-01-2009, 11:12   #6 (permalink)
nobody is perfect
 
Benutzerbild von richtsteiger
 
Registriert seit: Jul 2004
Ort: munich
Beiträge: 876
Und wenn du es mal damit versuchst, dass du dem DIV beim Start der
Aktualisierung eine initiale Größe verpasst und somit auch die Höhe und Breite
deines iframes zurücksetzt?
__________________
XING
richtsteiger ist offline   Mit Zitat antworten
Alt 28-01-2009, 11:50   #7 (permalink)
Gelbraum
 
Benutzerbild von mathiregister
 
Registriert seit: Jun 2007
Beiträge: 1.144
du meinst das div das den iFrame trägt!

eine initiale größe hat es schon:

PHP-Code:
.frame {
    
margin-left:250px;
    
float:left;
    
width:800px;
    
height:50px;

aber wie ich beim aktualisieren des iFrameinhaltes auf diese größe zurücksetzen kann, weiß ich nicht??
__________________
!!!

Geändert von mathiregister (28-01-2009 um 12:28 Uhr)
mathiregister ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele