Iframe resizing с scrollheight в хром/сафари
Я пытаюсь изменить размер (сделать больше или меньше) iframe на основе его содержимого. После щелчка на каждой странице вызывается метод, который выполняет изменение размера.
В Chrome я могу сделать iframe больше, но не меньше. document.body.scrollHeight всегда самое большое значение.
Итак, если одна большая страница устанавливает # iframe.height = '620px', а кто-то нажимает на ссылку на страницу с меньшим количеством содержимого scrollHeight останется на уровне 620 пикселей вместо уменьшения.
Каков правильный способ обращения с этим в Chrome/Safari?
Ответы
Ответ 1
Прежде чем запрашивать высоту документа внутри iframe, вы должны установить высоту объекта iframe на "auto". Что-то вроде этого:
objIframe = document.getElementById('theIframeId');
objIframe.style.height = 'auto';
И теперь:
document.body.scrollHeight
возвращает фактическую высоту документа.
Ответ 2
Вместо этого вы пытались использовать document.documentElement.scrollHeight
?