Javascript / Jquery:自动调整iframe的高度(如何在需要时缩小iframe)

时间:2014-01-18 10:36:17

标签: javascript jquery iframe

我有以下代码,一旦文字超过iframe可见高度,iframe就会更高;但是,当删除文本时,iframe仍然一样高。如何修改此代码(或者如果有不同的代码)将iframe调整为正确的高度。我需要它在一个函数中,以便在keyup上我可以运行该函数。

function autoResize(id){
    var newheight;
    var newwidth;

    if(document.getElementById){
        newheight=document.getElementById(id).contentWindow.document .body.scrollHeight;
        newwidth=document.getElementById(id).contentWindow.document .body.scrollWidth;
    }

    document.getElementById(id).height= (newheight) + "px";
    document.getElementById(id).width= (newwidth) + "px";
}

1 个答案:

答案 0 :(得分:1)

免责声明:不确定以下解决方案是否是最佳解决方案。

您可以将iframe重置为标准尺寸,然后使用您的方法调整其大小。

示例:

如果iframe的标准尺寸为300px×300px

function autoResize(id){
   //Reset iframe size
   document.getElementById(id).height= "300px";
   document.getElementById(id).width= "300px";

   //Your method continues
   var newheight;
   var newwidth;

   if(document.getElementById){
       newheight=document.getElementById(id).contentWindow.document .body.scrollHeight;
       newwidth=document.getElementById(id).contentWindow.document .body.scrollWidth;
   }

   document.getElementById(id).height= (newheight) + "px";
   document.getElementById(id).width= (newwidth) + "px";
}

希望这有帮助