如何使iframe调整内容的高度

时间:2012-11-30 18:09:41

标签: html iframe web height

我正在建立一个网页,我需要制作不同的部分,我希望页面调整高度到某个时刻正在查看的部分。 这是实现这一目标的最佳方式? 我试图用iframe和目标开场

来做
    <a href="/example" target="myframe">

但我不能让iframe调整显示的内容。

任何帮助都会得到帮助! 提前致谢

我想要的是一个窗口,只要有人点击“更多信息”,就会从页面底部展开。 我以为我可以用iframe实现它

2 个答案:

答案 0 :(得分:1)

这适用于所有浏览器

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>auto iframe height adjust</title>
<style>
</style>
<script type="text/javascript">
<!--//
function sizeFrame() {
var F = document.getElementById("myFrame");
if(F.contentDocument) {
 F.height = F.contentDocument.documentElement.scrollHeight+30; //FF 3.0.11, Opera 9.63, and    Chrome
} else {
F.height = F.contentWindow.document.body.scrollHeight+30; //IE6, IE7 and Chrome
}
}
window.onload=sizeFrame;
//-->
</script>
</head>
<body>

   支持iframe的浏览器是     需要查看此网站。                

答案 1 :(得分:0)

我找到了这个解决方案,它完美地解决了我的问题!它甚至可以选择重新宽度。

<script type='text/javascript'>

function setIframeHeight( iframeId ) /** IMPORTANT: All framed documents *must* have a DOCTYPE applied **/
{
var ifDoc, ifRef = document.getElementById( iframeId );

 try
 {   
 ifDoc = ifRef.contentWindow.document.documentElement;  
 }
 catch( e )
 { 
  try
  { 
   ifDoc = ifRef.contentDocument.documentElement;  
  }
  catch(ee)
  {   
  }  
 }

 if( ifDoc )
 {
  ifRef.height = 1;  
  ifRef.height = ifDoc.scrollHeight;

  /* For width resize, enable below.  */

  // ifRef.width = 1;
  // ifRef.width = ifDoc.scrollWidth; 
 }
}

</script>

<iframe id = "myIframe"  onload = "setIframeHeight( this.id )">

我在这里找到了它:http://www.sitepoint.com/forums/showthread.php?747398-IFRAME-Auto-Height