CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 4 of 4

Thread: Height web page

  1. #1
    Join Date
    Oct 2003
    Posts
    72

    Height web page

    Hi guys

    Is there a function that retrieves the height in pixel of a whole web page?

  2. #2
    Join Date
    Jul 2001
    Location
    Sunny South Africa
    Posts
    11,283

    Re: Height web page

    This should help, it uses IFrame (needs to be in HTML)
    PHP Code:
    <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.116 //extra height in px to add to iframe in FireFox 1.0+ browsers

    function resizeCaller() {
    var 
    dyniframe=new Array()
    for (
    i=0i<iframeids.lengthi++){
    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.alldocument.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"readjustIframefalse)
    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(iframeidurl){
    if (
    document.getElementById)
    document.getElementById(iframeid).src=url
    }

    if (
    window.addEventListener)
    window.addEventListener("load"resizeCallerfalse)
    else if (
    window.attachEvent)
    window.attachEvent("onload"resizeCaller)
    else
    window.onload=resizeCaller

    </script
    Is this what you mean ¿
    Last edited by HanneSThEGreaT; December 14th, 2005 at 06:45 AM.

  3. #3
    Join Date
    Jun 2005
    Posts
    1,255

    Smile Re: Height web page

    It depends on your browser.
    I have tested the following lines with Internet Explorer 5.5 and Firefox.
    HTML Code:
    <html>
    <body>
    <script language=javascript>
    alert(screen.height);
    alert(screen.width);
    if (document.all) {
       // I.E.
       alert(document.body.clientHeight);
       alert(document.body.clientWidth);
    }
    else {
       // Firefox and maybe also Netscape, Mac Opera
       alert(window.innerHeight);
       alert(window.innerWidth);
    }
    </script>
    </body>
    </html>

  4. #4
    Join Date
    Feb 2005
    Location
    Denmark
    Posts
    742

    Re: Height web page

    That is the functionality I use myself as well.......

    Quote Originally Posted by olivthill
    <snip>
    else {
    // Firefox and maybe also Netscape, Mac Opera
    <snip>
    Netscape runs similar to FireFox, so that is an affermative
    And I can (from personal usage) confirm that Opera uses this part as well, or at least the latter versions of Opera

    I'm not sure about Safari (Mac) however, seeing as I haven't tested that one with this script.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured