4
回答
谷歌浏览器中iframe的自适应高度
【腾讯云】学生服务器套餐10元/月 >>>   
在页面代码中使用iframe内联框架,为了消除页面滚动条,使用了自适应iframe高度的一些东西,但是在谷歌浏览上怎么都调试不出来(不自动使用iframe的高度),都大神指点为什么,要怎么该!
举报
共有4个答案 最后回答: 5年前

对难理解你的问题啊。

父页:A,
子页:B,

你是说A里的iframe的高度满屏?

还是B页的高度有多高,A页的iframe就要多高?如果是这样意思,你可以B页里,写个JS计算B的document高度,然后把这个高度,转给A,再设iframe的高度。也就是根据B来异步调整iframe的高度。


也就是iframe中的子页有多高我的iframe就要有多高,代码好了,并且在ie和火狐上都可以自适应,就是在谷歌上不能调试成功,我想知道这是为什么
<iframe id="main_frame" name="main_frame" scrolling="no" width="765px" height="auto" src="content1.html" frameborder="0" onload="javascript:dyniframesize(this);" ></iframe>
<script type="text/javascript" language="javascript">
var Sys = {};var ua = navigator.userAgent.toLowerCase();var s;(s=ua.match(/msie ([\d.]+)/))?Sys.ie=s[1]:(s=ua.match(/firefox\/([\d.]+)/))?Sys.firefox=s[1]:(s=ua.match(/chrome\/([\d.]+)/))?Sys.chrome=s[1]:(s=ua.match(/opera.([\d.]+)/))?Sys.opera=s[1]:(s=ua.match(/version\/([\d.]+).*safari/))?Sys.safari=s[1]:0;
function dyniframesize(iframe) {
    var height;
    if(Sys.ie||Sys.firefox||Sys.opera){
        height = iframe.contentWindow.document.body.scrollHeight;
    }else if(Sys.chrome||Sys.safari){height=iframe.contentWindow.document.documentElement.scrollHeight;}
    if(Sys.ie){iframe.style.height=height;}else{iframe.height=height;}
}
</script>
这样的代码  有问题么
顶部