IE에서 iframe의 body 객체 접근방법

국내에 웹 사이트들이 웹 표준을 지키고 OS나 브라우저와 관계 없이 접근성을 향상 시키기 위한 사이트 버그 신고 및 문제 해결을 위한 게시판입니다.
Post Reply
평양선봉
Posts: 5
Joined: 2006 08 23 17:32 03
Location: 압구정 뒷골목
Contact:

IE에서 iframe의 body 객체 접근방법

Post by 평양선봉 »

Code: Select all

...생략..
<body>
<iframe src="about:blank" name="ifrm"></iframe>

<script type="text/javascript">
<!--

alert( window.frames['ifrm'].document.body );

//-->
</script>

</body>
</html>
이런 문서에서..
JavaScript 로 iframe 의 body 객체를 접근/제어 하려 합니다.

페이지 로딩을 하게되면,
FF(1.5)에서는
[object HTMLBodyElement]
라는 결과가,
IE(6.0)에서는
null
의 결과가 나옵니다.

IE에서 iframe.document.body 의 객체를 어떤식으로 접근을 해야 하는지 조언 부탁드립니다.
DOM 문서를 찾고 있는데.. document.all 로 접근을 해야 하는지.. 혼동입니다. :roll:
nowhere0

Post by nowhere0 »

iframe.contentWindow.document.body
일겁니다. 아마도.
평양선봉
Posts: 5
Joined: 2006 08 23 17:32 03
Location: 압구정 뒷골목
Contact:

답글 감사합니다..^^

Post by 평양선봉 »

먼저 답변 감사드립니다. :D

Code: Select all

<script type="text/javascript">
<!--

var ifrm_win = document.getElementById('ifrm');
alert(ifrm_win.contentWindow.document.body);

//-->
</script>
이렇게 해도 같은 결과가 나오네요..

alert(ifrm_win.contentWindow...); 전에 alert 창을 한번더 뛰워주면 [object] 로 인식을 합니다.
평양선봉
Posts: 5
Joined: 2006 08 23 17:32 03
Location: 압구정 뒷골목
Contact:

iframe 해석 순서의 문제인듯..

Post by 평양선봉 »

IE에서 iframe 문서의 내용은 제일 나중에 해석하는듯 합니다.
그래서,

Code: Select all

..생략..

<iframe name="ifrm" src="about:blank" style="..."></iframe>

<script type="text/javascript">
<!--
alert( window.frames['ifrm'].document.body );
//-->
</script>

..생략..
처럼 <iframe> 이 먼저 위치하지만, 해석은 제일 나중에 하는듯 합니다.
문서를 좀더 찾아 봐야겠군요.
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest