IFrame Resize klappt in FF und IE, aber Opera streikt..
Qeo Sereai
- javascript
0 Struppi
Da mein alter Post untergegangen zu seien scheint ( warscheinlich habe ich die falsche Ueberschrift / den falschen Themenbereich gewaehlt ) und ich einige der dort beschriebenen Probleme schon loesen konnte, mache ich das mal ganz neu.
Also auf meiner Website ( http://i.1asphost.com/qeosereai/index1.html ) habe ich einen IFrame eingebaut, der sich in der Groesse seinem Inhalt anpasst. Dies klappt in IE7 und dem Firefox auch wunderbar, aber Opera moechte das partout nicht machen. Ich habe auch das durch die Suche oft zu findene Javascript von Gernot B. ausprobiert, aber komme merkwuerdigerweise zu demselben Ergebniss, obwohl seine Testseite im Opera funktioniert...
Das Script, das ich momentan zum Resizen verwende ist folgendes :
<script type="text/javascript">
//ID of Daily Iframe tag:
var iframeids=["Main"]
var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
var FFextraHeight=getFFVersion>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers
function dyniframesize() {
var dyniframe=new Array()
for (i=0; i<iframeids.length; i++){
if (document.getElementById){ //begin resizing iframe procedure
dyniframe[dyniframe.length] = document.getElementById(iframeids[i]);
if (dyniframe[i] && !window.opera){
dyniframe[i].style.display="block"
if (dyniframe[i].contentDocument && dyniframe[i].contentDocument.body.offsetHeight) //ns6 syntax
dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight+FFextraHeight + 15;
else if (dyniframe[i].Document && dyniframe[i].Document.body.scrollHeight) //ie5+ syntax
dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;
}
}
}
}
</script>
Da aber das Script aus der Suche auf meiner Seite auch nicht akzeptabel funktioniert, koennte ich mir auch denken, dass der Fehler irgendwo anders versteckt ist..
Also auf meiner Website ( http://i.1asphost.com/qeosereai/index1.html ) habe ich einen IFrame eingebaut,
Deine CSS Dateien sind kaputt. In eine CSS gehört nur CSS, kein HTML Tag und auch keine HTML Kommentare, darüber hinaus meldet FF darüber hinaus auch CSS Fehler. (ältere Versionen ignorieren solch fehlerhafte CSS Dateien)
zum Problem, selbst kann ich wenig sagen, da man so kein Beispiel zusammen bauen kann, es sowieso schon schwer war rauszufinden wo das iframe und das skript sitzt. Aber ich entdecke darin diese Bedingung:
if (dyniframe[i] && !window.opera){
D.h. Opera wird hier explizit ausgeschlossen.
Struppi.
Deine CSS Dateien sind kaputt. In eine CSS gehört nur CSS, kein HTML Tag und auch keine HTML Kommentare, darüber hinaus meldet FF darüber hinaus auch CSS Fehler. (ältere Versionen ignorieren solch fehlerhafte CSS Dateien)
Ja, mein free webspace hat daran rumgemurkst, aber ich musste, da der das so garnicht akzeptierte, die css sowieso ueberall in den Head schreiben, womit jetzt nur noch das Menu eine css benutzt..
zum Problem, selbst kann ich wenig sagen, da man so kein Beispiel zusammen bauen kann, es sowieso schon schwer war rauszufinden wo das iframe und das skript sitzt. Aber ich entdecke darin diese Bedingung:
if (dyniframe[i] && !window.opera){
D.h. Opera wird hier explizit ausgeschlossen.Struppi.
Das war des Raetsels loesung, das Script hatte ein Bekannter fuer mich gebastelt, da meines nicht wirklich mit dem IE funktionieren wollte, den Part habe ich glatt ueberlesen :D Danke.
Jetzt funktioniert es in allen drei Browsern :)