Welcome to Geeklog, Anonymous Friday, May 24 2024 @ 04:26 pm EDT

Geeklog Forums

dynamicly resizing a iFrame

Status: offline


Forum User
Full Member
Registered: 06/09/03
Posts: 162
Location:Rotterdam & Bonn
Say, one has various contents loaded thru a iFrame component.
There is a button toggling this content on and off. The iFrame window does not resize now, and shows the full (maximum) length. To avoid this, the following code can be used.
Text Formatted Code

// this is to be contained in the page loaded in a iFrame
// call toggleVisibility("myElementId") to toggle visibility of the element AND resize the iFrame
// resizing is done by this.parent.resizeMeNow()

<script type="text/javascript">
var e=null;
function toggleVisibility(id) {
   if (e) { e.style.display="none"; this.parent.restoreMeNow(); }
       e = document.getElementById(id);
   if (e.style.display == 'block') e.style.display = 'none';
   else                            e.style.display = 'block';

// this has to be contained in the parent page where the iFrame will be loaded.

<script type="text/javascript" language="JavaScript">
function resizeMeNow() {
  var myNewHeight=document.getElementById('myIFrameId').contentWindow.document.body.scrollHeight;

// add this attribute to the iFrame tag in this page:


Of course, this (not resizing to smaller pages) also happens when several pages are loaded after each other in a iFrame. In this case you don't need the toggleVisibility-function and could use only onLoad="parent.resizeMeNow()" in the body tag.

All times are EDT. The time is now 04:26 pm.

  • Normal Topic
  • Sticky Topic
  • Locked Topic
  • New Post
  • Sticky Topic W/ New Post
  • Locked Topic W/ New Post
  •  View Anonymous Posts
  •  Able to post
  •  Filtered HTML Allowed
  •  Censored Content