So I'm building a custom CMS solution for a site that exclusively uses
jQuery, but the cool part is that the CMS is entirely placed in a
single web page.  I accomplish this by showing and hiding only the
necessary <divs> required for the respective tab that is clicked AND
using a ton of AJAX to interact with the databases.

However, I am recently stumped as to how to get the following to work.

I need the contentWindow height of an iframe.  Sounds easy.  No.  I
keep a variable set called maxHeight so I know what value to change
the height of the "content" <div> (which holds all other divs)
depending on which tab is clicked (Insert News, Mailing List, etc.).

One of these divs contains an iframe (within the content div) and I
can't seem to get the proper height because it is appears I have wait
for the page to LOAD (and the subsequent iframe to load) before I can
calculate the height.  Well this isn't effective because I need to
know this height when the DOM is READY.

Essentially, I am taking the entire structure of the page and cloning
and placing it in a temporary div.  Then I show all the divs and then
calculate the height of the iframe to get the maxHeight value.
Unfortunately, this is always zero.  Any suggestions?

<head>


<style type="text/css">
iframe { display:block; width:100%; border:none;  width:100%; height:
100%;}
</style>

<script type="text/javascript" src="path/to/jquery.js"></script>

<script type="text/javascript">

function resizeFrame(f)
{
        alert(f.contentWindow.document.body.offsetHeight + " is the
offsetheight");
        f.style.height = f.contentWindow.document.body.offsetHeight + 'px'      
;
}

$().ready(function(){

        $('iframe').load(function()
        {
                alert('entered');
                resizeFrame(this);

        });

});

</script>
</head>

<body>

<iframe src="events.php" scrolling="no" id="x"></iframe>

</body>

Reply via email to