Добавление объявления DOCTYPE
к исходному документу IFRAME
поможет вычислить правильное значение из строки
document.getElementById('the_iframe').contentWindow.document.body.scrollHeight
см. W3C DOCTYPE для примеров
У меня были проблемы с IE и FF, так как он рендерил документ iframe
в режиме 'quirks', пока я не добавил DOCTYPE
.
Поддержка FF / IE / Chrome: .scrollHeight не работает с Chrome, поэтому я создал пример javascript с использованием jQuery для установки всех высот IFRAME
на странице на основе содержимого iframes. ПРИМЕЧАНИЕ. Это для справочных страниц вашего текущего домена.
<script type="text/javascript">
$(document).ready(function(){
$('iframe').each(function(){
var context = $(this);
context.load(function(event){ // attach the onload event to the iframe
var body = $(this.contentWindow.document).find('body');
if (body.length > 0 && $(body).find('*').length > 0) { // check if iframe has contents
context.height($(body.get(0)).height() + 20);
} else {
context.hide(); // hide iframes with no contents
}
});
});
});
</script>