2010-04-14 7 views
3

페이지에 다음과 같은 자동 높이 스크립트가있는 iframe이 있습니다. 외부 페이지가로드 될 때IE에서 페이지가 변경 될 때 iframe 자동 높이가 작동하지 않습니다.

function autoHeight(e) 
{ 
    if (e.contentDocument) { 
     e.height = e.contentDocument.body.offsetHeight + 35; 
    } 
    else { 
     e.height = e.contentWindow.document.body.scrollHeight + 35; 
    } 
} 

document.domain = "example.co.uk"; 
var ifr = document.getElementById('housingdata'); 

ifr.onload = function() { 
    autoHeight(ifr); 
} 

iframe을 잘 크기를 조정합니다,하지만 난 iframe에 새로운 페이지로 이동하는 경우, 스크롤바가 나타나고 페이지가 Internet Explorer에서 크기가 조정되지 않습니다. onload 이벤트가 발생할 때마다 다른 브라우저에서 iframe 크기가 조정됩니다.

IE8을 사용하고 있지만 외부 페이지가 IE7 호환 모드로 설정되어 있습니다. IE에 대한 해결 방법이 있습니까?

답변

1

이것을 구현하는 다른 방법을 찾았습니다. 나는 위의 스크립트를 제거하고 iframe이 페이지 자체에합니다 (autoHeight를 기능) 아래의 스크립트를 넣어 :

window.onload = function() { 
    var ifr = window.parent.document.getElementById('housingdata'); 
    autoHeight(ifr); 
} 

이제 때마다 페이지가로드, iframe을 크기가 조정됩니다.

0

iframe 태그로 직접 작성하려고 했습니까? (못생긴지만, 아마도 도움이 될 것입니다 ... 오래 석회 전 당신이 시도한 것과 똑같이하고 싶었고, 나는 이렇게했습니다)? 이게 도움이되지 않으면 집에있을 때 오래된 스크립트를 검색 할 것입니다 ... 다르게 한 것을 기억하지 못합니다.

관련 문제