需要獲取div的高度時
往往需要用到offsetHeight
有時會碰到offsetHeight獲取到為
的現象
感興趣的朋友可以參考下面的代碼片段
在使用IE中特別在目前div+css的方式往往不定義div的高度這是在添加div內容後需要獲取div的高度時往往需要用到offsetHeight
在使用中有時會碰到offsetHeight獲取到為的現象但如果你用各種JS調試工具調試又能在對象中看到值(如果直接指向offsetHeight是沒值的但如果是對象查看是有值的在調試器中回車查看對象就已經刷新對象了所以有值)
比如下面片段
復制代碼 代碼如下:
<!DOCTYPE html PUBLIC "
//W
C//DTD XHTML
Transitional//EN" "
<html>
<head>
<script language=
javascript
>
window
attachEvent( "onload"
function(){ _resizeScroll
();} );
window
onresize=function(){winresize();};
function _resizeScroll
(){
var html
=
<div id="divcj" style="margin
top:
px;font
size:
px;width:
px;">
+
<div style="float:left;width:
px;">測試</div>
+
<div style="float:left;width:
px;">danielinbiti</div>
+
</div>
+
<div id="divcj
" style="margin
top:
px;font
size:
px;width:
px;">
+
<div style="width:
px;">danielinbiti</div>
+
</div>
document
getElementById(
outer
)
innerHTML=html
;
document
getElementById(
divcj
)
style
display=
none
;
alert(document
getElementById(
divcj
)
offsetHeight);
}
</script>
</head>
<body>
<div id=
outer
></div>
</body>
</html>
如果獲取divcj的高度那麼在onload中獲取到的是因為divcj下有float方式布局的
這時如果div簡單可以借助隱藏層比如這裡的divcj把float去掉後獲取到的高度和divcj一樣高
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/20591.html