Q:

Javascript clientHeight inconsistency

When writing a Javascript a function that I had gotten help from earlier, which gets the height of an element that is hidden, someone reffered me to the Prototype function getDimensions(). In the example, they set "visibility: hidden; position: absolute; display: block;", which effectively lets us measure what the clientHeight would be if it were being displayed. Then they set it all back and you can go about your business. I haven't used prototype, but I would assume that works fine. However, when I tried to mimic the same function in my own code, the use of "position: absolute;" threw off the measurement. It works fine without it, but its use is what allows us to do this for a split second without skewing the design. My version is below, any idea why it isn't working?
    var objStyle = obj[objName].style;

    // Record original style values
    var visibility = objStyle.visibility;
    //var position = objStyle.position;
    var display = objStyle.display;

    // Modify object for measuring
    objStyle.visibility = "hidden";
    //objStyle.position = "absolute";
    objStyle.display = "block";

    // Measure height
    height = obj[objName].clientHeight;

    // Fix object
    objStyle.visibility = visibility;
    //objStyle.position = position;
    objStyle.display = display;

    // Return height
    return parseInt(height);

Thanks in advance for your help.

A:

I don't know if it works while invisible, but jQuery has some options here - in particular the height function; worth a look? Based on your example, something like:
height = $(obj[objName]).height();

