изменение размера фрейма с помощью scrollheight в chrome / safari - PullRequest
20 голосов
/ 16 июня 2010

Я пытаюсь изменить размер (сделать больше или меньше) фрейма, основываясь на его содержимом.После щелчка на каждой странице вызывается метод, который выполняет изменение размера.

В Chrome я могу сделать iframe больше, но не меньше.document.body.scrollHeight всегда самая большая ценность.

Таким образом, если на одной большой странице установлено # iframe.height = '620px', и кто-то нажимает на ссылку на страницу с меньшим содержанием, scrollHeight останется на 620px вместо уменьшения.способ справиться с этим в Chrome / Safari?

Ответы [ 2 ]

24 голосов
/ 08 августа 2012

Прежде чем запрашивать высоту документа внутри iframe, вы должны установить высоту объекта iframe на «auto». Примерно так:

objIframe = document.getElementById('theIframeId');    
objIframe.style.height = 'auto';

А теперь:

document.body.scrollHeight

возвращает фактическую высоту документа.

11 голосов
/ 30 октября 2010

Вы пытались использовать document.documentElement.scrollHeight вместо?

...