CMS솔루션마켓, 이온디 - 워드프레스, 라이믹스, 카페24, 그누보드, 엑셀

프리랜서 커뮤니티

http://miniwini.com/miniwinis/bbs/index.php?bid=share&m=search&mode=read&id=1114&p=1&keyword=iframe&scale=1&op=and&idx=1설명 : 일반적으로 iframe 을 쓰면 크기를 미리 지정해줘서 보기싫은 스크롤 막대가 생기기 마련입니다.
        그런 경우 자동으로 Iframe 내용에 따라서 문서가 로딩된 후 가로, 세로 크기를 조절해주는 자바스크립트입니다.


예시 :
<HTML>
<HEAD>
<SCRIPT LANGUAGE=javascript>
<!--
function reSize()
{
try{
var oBody = ifrm.document.body;
var oFrame = document.all("ifrm");

oFrame.style.height = oBody.scrollHeight + (oBody.offsetHeight - oBody.clientHeight);
oFrame.style.width = oBody.scrollWidth + (oBody.offsetWidth - oBody.clientWidth);
}
//An error is raised if the IFrame domain != its container's domain
catch(e)
{
window.status = 'Error: ' + e.number + '; ' + e.description;
}
}
//-->
</SCRIPT>
</HEAD>
<BODY onload=reSize()>
<iframeonload=reSize() id=ifrm src=YOUR_PAGE_HEREheight=100%></iframe>
</BODY>
</HTML>

자세한 설명 :
YOUR_PAGE_HERE 라는 부분에 자시의 Iframe 문서를 써주고
링크를 눌렀을 때 아이프레임에 나타나게 하려면 target 을 아이프레임 이름(여기서는 idfrm)으로 주면됩니다.

그리고 스크립트 내부의 try 와 catch 함수는 IE5.0 이하에서 에러가 나면 빼도 상관없답니다.

이와 달리 아래와 같이 아이프레임 문서에서 리사이즈시키는 약간 다른 방법도 있습니다.

http://www.faqts.com/knowledge_base/view.phtml/aid/1076

참조(MS Technet) : http://support.microsoft.com/default.aspx?scid=kb%3ben-us%3b278469

※ ifame에 height를 안 적어줘도 IE에서는 됩니다만 파폭은 안되더군요. 그래서 파폭에서도 사용하기 위해서는 <iframe .. height=100%> 를 주었습니다.
하지만 완벽히 IE에서와 똑같이 되지는 않군요. height가 100%가 다 채워진다는 것과 스크롤이 2개가 생기지 않는다는 것 정도.

그리고 src에 다른 사이트의 주소를 넣어주면 작동되지 않습니다. 자신의 계정 안의 문서만 됩니다. 자바스크립트 보안 상의 문제라더군요.
만약 다른 사이트의 주소를 넣어주면 파폭과 똑같이 됩니다. 그렇다면 이 소스는 height를 100%가 작동되게 하는 소스같군요. ^^

추천한 사람