IE를 사용할 때, 특히 현재 div css 방식에서는 div의 높이가 정의되지 않는 경우가 많습니다. 이는 div 콘텐츠를 추가한 후 div의 높이를 구해야 할 때 offsetHeight를 사용해야 하는 경우가 많기 때문입니다.
사용하다 보면 offsetHeight가 0으로 얻어지는 현상이 가끔 발생하는데, 다양한 JS 디버깅 도구를 사용하여 디버깅을 하면 객체에 값이 보이는 것을 볼 수 있습니다(직접 가리키면 쓸모가 없습니다) offsetHeight 로 변경되지만 개체 뷰에 값이 있으면 디버거에서 Enter 키를 눌러 개체가 새로 고쳐졌으므로 값이 있습니다.)
예를 들어 다음 조각은
<스크립트 언어 ='javascript'>
window.attachEvent( "onload", function(){ _resizeScroll2();} )
window.onresize=function(){winresize();}
function _resizeScroll2 (){
var html1 = '
'
'
Test
'
'
danielinbiti
'< ;/div>'
'
'
document.getElementById('outer').innerHTML=html1;
document.getElementById('divcj2') .style.display= 'none';
alert(document.getElementById('divcj2').offsetHeight)
}
;body>
divcj의 높이를 온로드한 후 얻은 것은 0입니다. divcj 아래에 float 레이아웃이 있기 때문입니다.
div가 간단한 경우 여기에서 divcj2와 같은 숨겨진 레이어를 사용할 수 있습니다. 플로트를 제거한 후 얻은 높이는 divcj와 동일합니다.