• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

dynamisches iframe

Status
Für weitere Antworten geschlossen.

burn4ever

Mitglied
Hi,
ich habe folgende artikel über ein dynamsiches iframe gefunden.

Das Inline-Frame selbst
<iframe name="Menuframe" id="if1" src="/Quelldatei.html" align="center" height="2300" width="100%" scrolling="no" frameborder="0">
Dieser Text wird angezeigt, wenn ihr Browser keine Inline-Frames unterstützt


</iframe> Das Java-Script <script type="text/JavaScript" language="JavaScript">
// <![CDATA[
try {
var in_frame_Y = parent.document.getElementById("if1");
in_frame_Y.height = 2300;
} catch (e) {
var in_frame_Y = FALSE;
}
function iframeSize() {
if (in_frame_Y) {
if (NS4) {
diff = in_frame_Y.height - document.getElementsByTagName('body')[0].offsetHeight - 15;
} else {
diff = in_frame_Y.height - document.getElementsByTagName('body')[0].scrollHeight - 15;
}
if (Math.abs(diff) > 10) {
diff = Math.round(diff / 10);
in_frame_Y.height -= diff;
window.setTimeout("iframeSize()", 20);
} else if (Math.abs(diff) > 0) {
diff = (diff / diff);
in_frame_Y.height -= diff;
window.setTimeout("iframeSize()", 20);
}
}
}
// ]]>
</script>
Der Startimpuls
<body onload="iframeSize();">

Allerdings funktioniert das bei mir nicht wirklich.
Wo packe ich denn den startimpuls hin??? Wird dieser automatisch aufgerufen wenn die Seite in das iframe geladen wird oder muss ich den noch irgendwie aufrufen??
 
Es wäre sicherlich besser gewesen, den Code zu zeigen, wie er bei Dir nicht funktoniert, als den Code aus dem Artikel. Und wenn Du Deinen nicht funktionierenden Code hier postest, bitte die Code-Tags nutzen. die siehst Du im erweiterten Editor.

Gruß thuemmy
 
okay hier mein iframe:
HTML:
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    margin-left: 0px;
    margin-top: 0px;
    overflow-Y:scroll;
    margin-right: 0px;
    margin-bottom: 0px;
}
-->
</style></head>
<body>
<iframe src="index.html" id="if1" width="100%" height="1800" name="Page" frameborder="no" border="0">
</iframe>
</html>
Die Seite welche in das iFrame geladen wird.

HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>


<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>

</style><style type="text/css">
<!--
body {
    margin-left: 0px;
    margin-top: 0px;

    overflow-x: hidden;


    
}
-->
</style></head>


</head>

<script type="text/JavaScript" language="JavaScript">
// <![CDATA[
try {
  var in_frame_Y = parent.document.getElementById("if1");
  in_frame_Y.height = 2300;
} catch (e) {
  var in_frame_Y = FALSE;
}
function iframeSize()  {
  if (in_frame_Y) { 
    if (NS4) {
      diff = in_frame_Y.height - document.getElementsByTagName('body')[0].offsetHeight - 15;
    } else {
      diff = in_frame_Y.height - document.getElementsByTagName('body')[0].scrollHeight - 15;
    }
    if (Math.abs(diff) > 10) {
      diff = Math.round(diff / 10);
      in_frame_Y.height -= diff;
      window.setTimeout("iframeSize()", 20);
    } else if (Math.abs(diff) > 0) {
      diff = (diff / diff);
      in_frame_Y.height -= diff;
      window.setTimeout("iframeSize()", 20);
    }
  }
}
// ]]>
</script>



<frameset rows="310,*" cols="*" framespacing="0" frameborder="no" border="0" bordercolor="#FF0000">
  <frame src="navigation_1024.html" name="Navigation">
  <frame src="main_1024.html" name="daten">
  <noframes>
 <body onload="iframeSize();">
    </body>
  </noframes>
</frameset>


</html>
Könnte es daran liegen das ich in das iframe ein frameset lade???
Mein hintergundgedanke ist, das das frameset meinen eigendliche indx.html ist ich aber bei einem framset nur die einzelnen frames scrollen kann und nicht die komplette seite. Also habe ich das frameset in ein iframe gepackt womit ich nun wie gewünscht die ganze seite scrollen kann ;-)
Ich weiss über den rücken zur brust ins auge ist aber momentan aus gewissen gründen nicht anders machbar!!!
 
Zuletzt bearbeitet:
Also, so wie ich das verstehe, musst Du das javascript in die Seite schreiben, in der Du das iframe einfügst. Dann musst Du in dieselbe Seite den <body>-Tag um die onload-Anweisung erweitern, und schon sollte es funktionieren.

Trotzdem rate ich Dir von Frames und auch iFrames ab, sie haben nur Nachteile, und in den seltensten Fällen eine wirkliche Berechtigung.

Gruß thuemmy
 
Also er schreibt hier was anderes. Willkommen auf EEB-World.de !
Ich gebe meinem iframe die id.
Und schreibe das java-script und den onload-befehl in die html rein welche in das iframe geladen wird.
Oder seh ich das falsch?? Aber wenn ich das so mach funktioniert das trotzdem nicht bei mir????
 
Ich habe das eben mal nachvollzogen, bei mir geht es so auch nicht. Allerdings denke ich mal, dass in dem Text
muss in JEDER Seite sein, die in das IFrame geladen wird.
ein Tippfehler ist, und es muss so
muss in JEDER Seite sein, in die das IFrame geladen wird.
heißen. Denn die Seite, die im iFrame angezeigt wird, weiß doch gar nichts von einem iFrame.

Wobei ich sagen muss, dass ich absolut keinen Plan von javascript habe.

Gruß thuemmy
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben