2015-03-25 5 views
-3

У меня есть IFRAME на моей странице, я использую этот код:100% высота авто на IFRAME

<script> 
    function autoResizeiFrame(obj) { 
     obj.style.height = obj.contentWindow.document.body.scrollHeight + 'px'; 
    } 
    </script> 
    <iframe src="link.php" frameborder="0" width="100%" height="100%" onload='javascript:autoResizeiFrame(this);'></iframe> 

, которая автоматически изменяет размер IFRAME на высоту 100%.

Это работает отлично, однако, если браузер изменен, уменьшив ширину экрана, я вижу границы iframe и не изменяет автоматически высоту iframe.

Это только изменение размера его на странице загрузки

+0

точно. вы не указываете, что нужно делать это при изменении размера окна. Что за вопрос? lol – cr0ss

+0

Примите один из ответов пожалуйста. Первый будет самым прекрасным – tim

+0

@TimRijckaert. Я отвечу, если вы дадите мне шанс. И правильно, первый был бы самым прекрасным, твой был в 21:29:16, а другой от Федерико был в 21:28:36, так что угадайте, какой из них я буду отмечать как ответ :) – charlie

ответ

0

Привет Вы должны использовать событие изменения размера:

Я обновленное решение:

Если я правильно понимаю, вы не содержание IFRAME чтобы не прокручивать и утоляет дисплей в полном объеме .... чем это будет работать ... (я надеюсь ...)

<script type="text/javascript"> 
function autoResizeiFrame(obj) { 
    obj.style.height = obj.contentWindow.document.body.scrollHeight + "px"; 
} 

window.addEventListener("load",function(){ 
    var obj=document.getElementById("myIframe"); 
    obj.contentWindow.addEventListener("resize",function(){autoResizeiFrame(obj);},false); 
    autoResizeiFrame(obj); 
},false); 
</script> 

<iframe id="myIframe" src="index.php" frameborder="3" width="100%" height="100%" style="border:2px solid red;"></iframe> 

Позвольте мне знать.

+0

Может ли obj быть идентификатором кадра или классом? – charlie

+0

obj - это элемент iframe ... «autoResizeiFrame» - это ваша функция ... дать Iframe идентификатор, а затем вызвать autoResizeiFrame (document.getElementById («id_of_Iframe»)); – Federico

+0

Я обновил решение ... – Federico

0

На этой странице вы должны ввести мероприятие onresize. См. Эту ссылку. W3School

window.addEventListener("resize", autoResizeiFrame(document.getElementById("myframe"))); 
+0

Может ли obj быть идентификатором кадра или классом? – charlie

+0

Глядя на ваш код, вам нужен объект DOM. Итак: document.getElementById ("myframe"); – tim

+0

любой шанс, что вы можете отредактировать свой код? – charlie

Смежные вопросы