나는 우리 회사 CMS 내부에 임베드하고자하는 응용 프로그램을 가지고 있습니다. 이를 수행하는 유일한 방법은 에로드하는 것입니다.<iframe> - 참조 페이지의 전체 높이를 표시하는 방법은 무엇입니까?
쉬운 : 그냥 설정하십시오 height
및 width
to 100%
! 제외하고는 작동하지 않습니다.
나는 0
에 frameborder
설정에 대해 알아 않았기 때문에 적어도 사이트의 일부처럼 보이는,하지만 난 안에 allready 일이있는 페이지를 못생긴 스크롤 을하지 않으려는 것입니다.
이 작업을 수행하는 트릭이 있습니까?
편집 :
- CMS는
- 대부분의 페이지가 CMS
- 내 응용 프로그램을 통해 만들어 우리의 전체 웹 사이트에 대한 시시한 물건을 표시하는 회사 : 나는 약간 내 질문을 명확히 할 필요가 있다고 생각 아니지만, 그들은 내게 그것을 포함 시키겠다
- 나는 어떤
iframe
에 대한 통제가 없다. 그래서 어떤 해결책도 참조 페이지에서 작동해야한다. (iframe
태그의속성) - CMS가 그렇게 100 만 픽셀로 높이를 설정, 바닥 글을 표시 내가 참조 된 페이지에서 부모 페이지의 DOM에 액세스 할 수있는 좋은 생각
하지? 이 도움이 될 수도 있지만 어떤 사람들은이 가능하고 싶지 않을 수도 볼 수 있습니다 ...
이 기술은 여러 소스에서 (gleaned을 작동하는 것 같다,하지만 허용 대답에서 link 영감 :
에서 부모 문서 : 아이에서
<iframe id="MyIFRAME" name="MyIFRAME"
src="http://localhost/child.html"
scrolling="auto" width="100%" frameborder="0">
no iframes supported...
</iframe>
: BTW
<!-- ... -->
<body>
<script type="text/javascript">
function resizeIframe() {
var docHeight;
if (typeof document.height != 'undefined') {
docHeight = document.height;
}
else if (document.compatMode && document.compatMode != 'BackCompat') {
docHeight = document.documentElement.scrollHeight;
}
else if (document.body
&& typeof document.body.scrollHeight != 'undefined') {
docHeight = document.body.scrollHeight;
}
// magic number: suppress generation of scrollbars...
docHeight += 20;
parent.document.getElementById('MyIFRAME').style.height = docHeight + "px";
}
parent.document.getElementById('MyIFRAME').onload = resizeIframe;
parent.window.onresize = resizeIframe;
</script>
</body>
: 보안상의 이유로 JavaScript에서 제한으로 인해 부모와 자식이 같은 도메인에있는 경우에만 작동합니다 ...
이 링크 만 응답이 받아 들여지고 여러 번 투표 한 것으로 믿을 수 없습니다 .. –