我正在尝试使用此函数计算带display:none
的div的计算高度:
function getComputedHeight(theElt){
if(navigator.appName=='Microsoft Internet Explorer'){
tmphght = document.getElementById(theElt).offsetHeight;
}
else{
docObj = document.getElementById(theElt);
var tmphght1 = document.defaultView.getComputedStyle(docObj, "").getPropertyValue("height");
tmphght = tmphght1.split('px');
tmphght = tmphght[0];
}
return tmphght;
}
这是我的HTML
<a href="javascript:;" onclick="showme('<?php echo 'mydiv765_'.$userid[$i];?>')">View</a>
和名为
的函数function showme(objid)
{
var h=getComputedHeight(objid);
alert(h);
}
该函数返回:auto。
请问我该如何解决这个问题?是否有更好的方法来达到同样的效果?
答案 0 :(得分:1)
试试这个?
function getComputedHeight(obj){
var originalDisplay = obj.style.display;
if (originalDisplay == "none") {
obj.style.filter = "alpha(opacity=1)";
obj.style.opacity = 0.01;
}
height = obj.offsetHeight;
if (originalDisplay == "none") {
obj.style.display = originalDisplay;
obj.style.filter = "alpha(opacity=100)"; // IE
obj.style.opacity = 1; // Firefox, etc..
}
return height;
}