Как динамически изменить размер iFrame со страницами разной высоты? - PullRequest
1 голос
/ 05 мая 2011

Я использую этот код для динамического изменения размера iFrame в зависимости от содержимого удаленного сайта:

http://solidgone.org/Set-IFRAME-height-based-on-size-of-remotely-loaded-content

Однако на этом удаленном сайте есть и другие страницы. Что происходит, когда я нажимаю на ссылку на удаленном сайте (внутри iFrame), высота не изменяется соответственно. Вместо этого он использует высоту страницы, которую мы изначально установили в iFrame. В этом случае он использует высоту remote.php (которая довольно высокая):

<iframe id='local-iframe' width='1' height='1' frameborder='0' scrolling='no' src ='http://remotesite.com/remote.php'></iframe>
</iframe>

Другое дело, что, даже если я указал скроллинг = 'нет' в iFrame, после того, как я щелкнул ссылку внутри iFrame, полосы прокрутки снова появятся.

Есть ли решение этой проблемы? Что мы делаем не так?

Ответы [ 2 ]

2 голосов
/ 17 августа 2011

Код на этом сайте (ниже) работал для меня, хотя я работаю над тем, чтобы исчезнуть граница ...

http://ramanisandeep.wordpress.com/2009/12/16/how-to-dynamically-adjust-an-iframe’s-height/


Вставить iframe наpage

<iframe scrolling='no' frameborder='0' id='frmid' src=’getad.aspx'
         onload='javascript:resizeIframe(this);'>
</iframe>

Используйте этот JavaScript для изменения размера iframe в зависимости от высоты и ширины дочерней страницы

<script language="javascript" type="text/javascript">
 function resizeIframe(obj)
 {
   obj.style.height = obj.contentWindow.document.body.scrollHeight + 'px';
   obj.style.width = obj.contentWindow.document.body.scrollWidth + 'px';
 }
 </script>
0 голосов
/ 05 мая 2011

Я думаю, что в настоящее время вы не можете напрямую получить доступ к содержимому IFRAME любым возможным способом.Поэтому вы также не можете напрямую определить его высоту.

Как вы можете прочитать из статьи, на которую ссылаетесь, автор написал обновление: http://solidgone.org/Redux-Set-IFRAME-height-based-on-size-of-remotely-loaded-content

Если я правильно понял, он делает запрос с высотой в качестве параметра для локального ресурса, что поможет установить высоту.

...