【问题标题】:Adjusting IFrame Height only Chrome仅调整 IFrame 高度 Chrome
【发布时间】:2012-03-06 23:37:02
【问题描述】:

所以我知道这个解决方案在某个地方,但我找不到它。我已经研究了大约一天的 google 和 stackOverflow。

基本上,我有一个 iframe,我正试图让它扩展到其内容的大小,这是一项非常简单的任务。我经历了几种方法,查看不同的高度等。但由于某些天哪该死的原因,Chrome 不想忍受我。 所以这里是调整 IFrame 大小的 javascript。为了确保 JS 正常工作并读取我在 innerHTML 部分中投入的高度(有点像调试)

<script type="text/javascript">

function resizeFrame() {
     var t=document.getElementById("Footer");
     var f = document.getElementById("mainContent");
     var y = f.contentWindow;

     t.innerHTML = y.document.body.offsetHeight;
     f.height = y.body.offsetHeight;
}

</script>

这是 iframe:

    <iframe onload="resizeFrame()" id="mainContent" src="homec.html" scrolling=auto frameborder=0 height="100%" width="100%">
    Not working!</iframe>

所以出于某种奇怪的原因,它不想工作,在 Chrome 中非常讨厌我。但它适用于 Firefox 和 IE。有什么解决办法吗??

【问题讨论】:

    标签: google-chrome iframe


    【解决方案1】:

    除非我遗漏了什么,否则我相信您在函数的最后一行有错字(缺少.document.

    以下内容在 Chrome (18.0) 中适用于我:

    <!DOCTYPE html>
    <html>
    <head>
    <script type="text/javascript">
    function resizeFrame() {
         var t=document.getElementById("Footer");
         var f = document.getElementById("mainContent");
         var y = f.contentWindow;
    
         t.innerHTML = y.document.body.offsetHeight;
         f.height = y.document.body.offsetHeight;
        }
    </script>
    </head>
    <body>
    <iframe onload="resizeFrame()" id="mainContent" src="homec.html" scrolling=auto frameborder=0 
    height="100%" width="100%">Working!</iframe>
    <p id="Footer"> Footer</p>
    </body>
    </html>
    

    【讨论】:

    • 我知道这已经晚了一年,但这就是解决方案。我不知道为什么我没有回应。感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 2011-08-23
    • 1970-01-01
    • 2014-11-06
    • 2018-03-23
    • 2013-10-28
    • 2011-11-25
    相关资源
    最近更新 更多