Dieses Modul berechnet die Höhe des "contents" für ein iFrame bei jedem Seitenaufruf. Die Breite kann im iFrame Modul-Output beliebig konfiguriert werden. (Hier 100%)
ACHTUNG: Funktioniert nur mit Dokumenten die auf dem selben Server liegen wie Contenido!
1. Modul für den Head
(Im Layout einen CMS_Container[x] im Header anlegen)
OUTPUT:
Code: Alles auswählen
/*********************************************** 
* CONTENIDO HEAD-MODUL - OUTPUT 
* 
* Modulname   :    Auto iFrame Head-Modul v1.0 
* Author(s)   :     halousi 
* Copyright   :     Johannes Sanwald 
* Created     :     07.11.2005 
************************************************/ 
<script type="text/javascript"> 
/*********************************************** 
* IFrame SSI script II- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com) 
* Visit DynamicDrive.com for hundreds of original DHTML scripts 
* This notice must stay intact for legal use 
***********************************************/ 
//Input the IDs of the IFRAMES you wish to dynamically resize to match its content height: 
//Separate each ID with a comma. Examples: ["myframe1", "myframe2"] or ["myframe"] or [] for none: 
var iframeids=["myframe"] 
//Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended): 
var iframehide="yes" 
var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1] 
var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers 
function resizeCaller() { 
var dyniframe=new Array() 
for (i=0; i<iframeids.length; i++){ 
if (document.getElementById) 
resizeIframe(iframeids[i]) 
//reveal iframe for lower end browsers? (see var above): 
if ((document.all || document.getElementById) && iframehide=="no"){ 
var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i]) 
tempobj.style.display="block" 
} 
} 
} 
function resizeIframe(frameid){ 
var currentfr=document.getElementById(frameid) 
if (currentfr && !window.opera){ 
currentfr.style.display="block" 
if (currentfr.contentDocument && currentfr.contentDocument.body.offsetHeight) //ns6 syntax 
currentfr.height = currentfr.contentDocument.body.offsetHeight+FFextraHeight; 
else if (currentfr.Document && currentfr.Document.body.scrollHeight) //ie5+ syntax 
currentfr.height = currentfr.Document.body.scrollHeight; 
if (currentfr.addEventListener) 
currentfr.addEventListener("load", readjustIframe, false) 
else if (currentfr.attachEvent){ 
currentfr.detachEvent("onload", readjustIframe) // Bug fix line 
currentfr.attachEvent("onload", readjustIframe) 
} 
} 
} 
function readjustIframe(loadevt) { 
var crossevt=(window.event)? event : loadevt 
var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement 
if (iframeroot) 
resizeIframe(iframeroot.id); 
} 
function loadintoIframe(iframeid, url){ 
if (document.getElementById) 
document.getElementById(iframeid).src=url 
} 
if (window.addEventListener) 
window.addEventListener("load", resizeCaller, false) 
else if (window.attachEvent) 
window.attachEvent("onload", resizeCaller) 
else 
window.onload=resizeCaller 
</script>
INPUT:
Code: Alles auswählen
/*********************************************** 
* CONTENIDO MODUL - INPUT 
* 
* Modulname   :    Auto iFrame-Modul v 1.0 
* Basismodul : MOD_IFRAME_PICKER by Stefan Bürk 
*
* Author: SkyBlader 
* Modified By: halousi, 07-11-2005
* Created     :     26-04-2004
************************************************/ 
$moddir         =   "iframedata/"; 
// VALUES 
$sky_selectedfile   =   "CMS_VALUE[4000]"; 
$sky_iframe_width   =    "CMS_VALUE[4001]"; 
$sky_iframe_height      =    "CMS_VALUE[4002]"; 
$sky_iframe_border      =    "CMS_VALUE[4003]"; 
$sky_iframe_style       =    "CMS_VALUE[4004]";   // not used till yet 
$sky_iframe_class       =    "CMS_VALUE[4005]";   // not used till yet 
$sky_iframe_httpinput   =    "CMS_VALUE[4006]"; 
// VARIABLES 
$sky_selectedfile2   =   "CMS_VAR[4000]"; 
$sky_iframe_width2   =    "CMS_VAR[4001]"; 
$sky_iframe_height2     =    "CMS_VAR[4002]"; 
$sky_iframe_border2     =    "CMS_VAR[4003]"; 
$sky_iframe_style2      =    "CMS_VAR[4004]";   // not used till yet 
$sky_iframe_class2      =    "CMS_VAR[4005]";   // not used till yet 
$sky_iframe_httpinput2  =    "CMS_VAR[4006]";    
// starting Modul Options Table 
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">"; 
// ################################################################################################ 
//   START HTTPInput 
// ################################################################################################ 
echo "  <tr valign=\"top\">"; 
echo "    <td>HTTP Link:</td>"; 
echo "    <td>"; 
echo "      <input type=\"text\" name=\"".$sky_iframe_httpinput2."\" value=\"".$sky_iframe_httpinput."\"> ";    
echo "    </td>"; 
echo "  </tr>"; 
// ################################################################################################ 
//   END HTTPInput 
// ################################################################################################ 
// ################################################################################################ 
//   START IFRAME-BORDER 
// ################################################################################################ 
echo "  <tr valign=\"top\">"; 
echo "    <td>IFRAME-Border:</td>"; 
echo "    <td>"; 
echo "      <input type=\"text\" name=\"".$sky_iframe_border2."\" value=\"".$sky_iframe_border."\"> ";    
echo "    </td>"; 
echo "  </tr>"; 
// ################################################################################################ 
//   END IFRAME-BORDER 
// ################################################################################################ 
// closing Module Options Table 
echo "</table>";  Code: Alles auswählen
<?php 
// Lese ausgewählte Datei aus. 
$moddir      =   "upload/iframedata/"; 
$sky_selected_file    = "CMS_VALUE[4000]"; 
$sky_iframe_width   = "CMS_VALUE[4001]"; 
$sky_iframe_heiht       = "CMS_VALUE[4002]"; 
$sky_iframe_border      = "CMS_VALUE[4003]"; 
$sky_iframe_style       = "CMS_VALUE[4004]";   // not used till yet 
$sky_iframe_class       = "CMS_VALUE[4005]";   // not used till yet 
$sky_iframe_httpinput   = "CMS_VALUE[4006]"; 
// Arbeite Einstellungsvariabeln ab 
// ################################################################################### 
// START - IFRAME-BORDER 
if ( strlen($sky_iframe_border) > 0 ) 
{ 
   $ls_iframe_border = $sky_iframe_border; 
} 
else 
{ 
   $ls_iframe_border = "1"; 
} 
// END - IFRAME-BORDER 
// ################################################################################### 
// check for NO FILE Selected 
if ( $sky_selected_file != "--KEIN--" ) 
{ 
   // using selected file 
   // überprüfe ob ausgewählte Datei noch existiert 
   if ( file_exists( $moddir.$sky_selected_file ) ) 
   { 
      // erzeuge IFrame Ausgabecode 
      echo '<iframe id="myframe" src="'.$moddir.$sky_selected_file.'" width="100%" height="100%" frameborder="'.$ls_iframe_border.'" scrolling="no">'; 
      echo '<p>Ihr Browser unterstützt keine IFrames. Bitte aktualisieren Sie ihren Browser.</p>'; 
      echo '</iframe>'; 
   } 
   else 
   { 
      // using HTTP Input 
      echo '<iframe id="myframe" src="'.$sky_iframe_httpinput.'" width="100%" height="100%" frameborder="'.$ls_iframe_border.'" scrolling="no">'; 
      echo '<p>Ihr Browser unterstützt keine IFrames. Bitte aktualisieren Sie ihren Browser.</p>'; 
      echo '</iframe>'; 
   } 
    
} 
else 
{ 
   // using HTTP Input 
   echo '<iframe  id="myframe" src="'.$sky_iframe_httpinput.'" width="100%" height="100%" frameborder="'.$ls_iframe_border.'" scrolling="no">'; 
   echo '<p>Ihr Browser unterstützt keine IFrames. Bitte aktualisieren Sie ihren Browser.</p>'; 
   echo '</iframe>'; 
} 
?>Viele Grüße,
halousi