javascript原生和jquery库实现iframe自适应高度和宽度,jqueryiframe
javascript原生和jquery库实现iframe自适应高度和宽度,jqueryiframe
javascript原生和jquery库实现iframe自适应内容高度和宽度---推荐使用jQuery的代码!
<iframe src="index.php" id="mainiframe" name="mainiframe" width="100%" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"></iframe>
基于Jquery库的代码很好实现:
<script language="javascript" type="text/javascript"> $(document).ready(function(){ $("#mainframe").load(function(){ $(this).height(0); //用于每次刷新时控制IFRAME高度初始化 var height = $(this).contents().height() + 10; $(this).height( height < 500 ? 500 : height ); }); }); </script>
基于JS原生代码的实现:
<script language="javascript"> if (window.parent.length>0){window.parent.document.all.mainframe.style.height=document.body.scrollHeight;} </script>
只需在你被iframe调用的文件</body>之后加入上面这段即可!
这个也可以控制iframe的高度随内容的多而自动增长
<iframe name="web" width="100%" frameborder=0 height="100%" src="index.php" id="web" onload="this.height=web.document.body.scrollHeight+20" ></iframe>
jquery库实现iframe自适应内容高度和宽度
通过js 来控制自适应高度;
html代码:
<iframe src="需要连接的iframe地址" id="iframepage" name="iframepage" frameBorder=0 scrolling=no width="100%" onLoad="iFrameHeight()" ></iframe>
js代码:
<script type="text/javascript" language="javascript">
function iFrameHeight() {
var ifm= document.getElementById("iframepage");
var subWeb = document.frames ? document.frames["iframepage"].document : ifm.contentDocument;
if(ifm != null && subWeb != null) {
ifm.height = subWeb.body.scrollHeight;
}
}
</script>
实现方法很简单:
假设Parent.Asp 包含有一个名为 News 的Iframe.Asp,那么在Parent.asp我们如下设置
<table border=1>
<tr>
<td id=iHeight>
<iframe name="news" width=100% height=100% src="Iframe.Asp" frameborder=no scrolling=no ></iframe>
</td>
</tr>
</table>
在Iframe.Asp里<body>写入如下代码:
<body onload="parent.document.all.iHeight.height=this.document.body.scrollHeight+10;">
通过以上即可达到Iframe的高度及大小随帧内容的大小而自动改变的效果,而不会影响你原来页面效果,非常方便!
演示地址为:
相关内容
- 暂无相关文章
评论关闭