我有以下代码,一旦文字超过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";
}
答案 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";
}
希望这有帮助